Leadtools.Dicom Namespace > DicomDataSet Class : SetDoubleValueExt Method |
'Declaration Public Function SetDoubleValueExt( _ ByVal element As DicomElement, _ ByVal value() As Double, _ ByVal count As Integer _ ) As Boolean
'Usage Dim instance As DicomDataSet Dim element As DicomElement Dim value() As Double Dim count As Integer Dim value As Boolean value = instance.SetDoubleValueExt(element, value, count)
ObjectiveC Syntax
public: bool SetDoubleValueExt( DicomElement^ element, array<double>^ value, int count )
If more than one value is stored in the Value Field of the Data Element, you must set all values at the same time.
This method differs from SetDoubleValue(DicomElement,Double[],Int32) in that it can be called with any numeric value representation, including:
''' Public Sub DicomDataSet_SetDoubleValueExtExample() Dim ds As New DicomDataSet() Dim element As DicomElement = Nothing Dim doubleValues() As Double = Nothing Dim retrieveDoubleValues() As Double = Nothing element = ds.InsertElement(Nothing, True, DicomTag.SelectorATValue, DicomVRType.AT, False, 0) doubleValues = New Double() {DicomTag.PatientName, DicomTag.PatientID, DicomTag.DigitalSignaturesSequence} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorISValue, DicomVRType.IS, False, 0) doubleValues = New Double() {-2147483648, 2147483647} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorSLValue, DicomVRType.SL, False, 0) doubleValues = New Double() {-2147483648, 2147483647} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorULValue, DicomVRType.UL, False, 0) doubleValues = New Double() {0, 4294967295} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorUSValue, DicomVRType.US, False, 0) doubleValues = New Double() {0, 65535} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorSSValue, DicomVRType.SS, False, 0) doubleValues = New Double() {-32768, 32767} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorFLValue, DicomVRType.FL, False, 0) doubleValues = New Double() {-1.2345F, +1.2345F} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorFDValue, DicomVRType.FD, False, 0) doubleValues = New Double() {-1.2345F, +1.2345F} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) MessageBox.Show("Finished") End Sub Public Sub CompareDoubleArrays(ByVal d1() As Double, ByVal d2() As Double) If d1 Is Nothing OrElse d2 Is Nothing Then Return End If If d1.Length <> d2.Length Then MessageBox.Show("Not Equal", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) Return End If For i As Integer = 0 To d1.Length - 1 If d1(i) <> d2(i) Then MessageBox.Show("Not Equal", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error) Return End If Next i End Sub
/// public void DicomDataSet_SetDoubleValueExtExample() { DicomDataSet ds = new DicomDataSet(); DicomElement element = null; double[] doubleValues = null; double[] retrieveDoubleValues = null; element = ds.InsertElement(null, true, DicomTag.SelectorATValue, DicomVRType.AT, false, 0); doubleValues = new double[] { DicomTag.PatientName, DicomTag.PatientID, DicomTag.DigitalSignaturesSequence }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorISValue, DicomVRType.IS, false, 0); doubleValues = new double[] { -2147483648, 2147483647 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorSLValue, DicomVRType.SL, false, 0); doubleValues = new double[] { -2147483648, 2147483647 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorULValue, DicomVRType.UL, false, 0); doubleValues = new double[] { 0, 4294967295 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorUSValue, DicomVRType.US, false, 0); doubleValues = new double[] { 0, 65535 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorSSValue, DicomVRType.SS, false, 0); doubleValues = new double[] { -32768, 32767 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorFLValue, DicomVRType.FL, false, 0); doubleValues = new double[] { -1.2345F, +1.2345F }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorFDValue, DicomVRType.FD, false, 0); doubleValues = new double[] { -1.2345F, +1.2345F }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); MessageBox.Show("Finished"); } public void CompareDoubleArrays(double[] d1, double[] d2) { if (d1 == null || d2 == null) return; if (d1.Length != d2.Length) { MessageBox.Show("Not Equal", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } for (int i = 0; i < d1.Length; i++) { if (d1[i] != d2[i]) { MessageBox.Show("Not Equal", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } }
/// public void DicomDataSet_SetDoubleValueExtExample() { DicomDataSet ds = new DicomDataSet(); DicomElement element = null; double[] doubleValues = null; double[] retrieveDoubleValues = null; element = ds.InsertElement(null, true, DicomTagConstants.SelectorATValue, DicomVRType.AT, false, 0); doubleValues = new double[] { DicomTagConstants.PatientName, DicomTagConstants.PatientID, DicomTagConstants.DigitalSignaturesSequence }; ds.SetDoubleValue(element, doubleValues, (uint)doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, (uint)doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTagConstants.SelectorISValue, DicomVRType.IS, false, 0); doubleValues = new double[] { -2147483648, 2147483647 }; ds.SetDoubleValue(element, doubleValues, (uint)doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, (uint)doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTagConstants.SelectorSLValue, DicomVRType.SL, false, 0); doubleValues = new double[] { -2147483648, 2147483647 }; ds.SetDoubleValue(element, doubleValues, (uint)doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, (uint)doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTagConstants.SelectorULValue, DicomVRType.UL, false, 0); doubleValues = new double[] { 0, 4294967295 }; ds.SetDoubleValue(element, doubleValues, (uint)doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, (uint)doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTagConstants.SelectorUSValue, DicomVRType.US, false, 0); doubleValues = new double[] { 0, 65535 }; ds.SetDoubleValue(element, doubleValues, (uint)doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, (uint)doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTagConstants.SelectorSSValue, DicomVRType.SS, false, 0); doubleValues = new double[] { -32768, 32767 }; ds.SetDoubleValue(element, doubleValues, (uint)doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, (uint)doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTagConstants.SelectorFLValue, DicomVRType.FL, false, 0); doubleValues = new double[] { -1.2345F, +1.2345F }; ds.SetDoubleValue(element, doubleValues, (uint)doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, (uint)doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTagConstants.SelectorFDValue, DicomVRType.FD, false, 0); doubleValues = new double[] { -1.2345F, +1.2345F }; ds.SetDoubleValue(element, doubleValues, (uint)doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, (uint)doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); Debug.WriteLine("Finished"); } public void CompareDoubleArrays(double[] d1, double[] d2) { if (d1 == null || d2 == null) return; if (d1.Length != d2.Length) { Debug.WriteLine("Error: Not Equal"); return; } for (int i = 0; i < d1.Length; i++) { if (d1[i] != d2[i]) { Debug.WriteLine("Error: Not Equal"); return; } } }
/// public void DicomDataSet_SetDoubleValueExtExample() { DicomDataSet ds = new DicomDataSet(); DicomElement element = null; double[] doubleValues = null; double[] retrieveDoubleValues = null; element = ds.InsertElement(null, true, DicomTag.SelectorATValue, DicomVRType.AT, false, 0); doubleValues = new double[] { DicomTag.PatientName, DicomTag.PatientID, DicomTag.DigitalSignaturesSequence }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorISValue, DicomVRType.IS, false, 0); doubleValues = new double[] { -2147483648, 2147483647 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorSLValue, DicomVRType.SL, false, 0); doubleValues = new double[] { -2147483648, 2147483647 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorULValue, DicomVRType.UL, false, 0); doubleValues = new double[] { 0, 4294967295 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorUSValue, DicomVRType.US, false, 0); doubleValues = new double[] { 0, 65535 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorSSValue, DicomVRType.SS, false, 0); doubleValues = new double[] { -32768, 32767 }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorFLValue, DicomVRType.FL, false, 0); doubleValues = new double[] { -1.2345F, +1.2345F }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); element = ds.InsertElement(null, true, DicomTag.SelectorFDValue, DicomVRType.FD, false, 0); doubleValues = new double[] { -1.2345F, +1.2345F }; ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length); retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length); CompareDoubleArrays(doubleValues, retrieveDoubleValues); MessageBox.Show("Finished"); } public void CompareDoubleArrays(double[] d1, double[] d2) { if (d1 == null || d2 == null) return; if (d1.Length != d2.Length) { MessageBox.Show("Not Equal"); return; } for (int i = 0; i < d1.Length; i++) { if (d1[i] != d2[i]) { MessageBox.Show("Not Equal"); return; } } }
''' Public Sub DicomDataSet_SetDoubleValueExtExample() Dim ds As New DicomDataSet() Dim element As DicomElement = Nothing Dim doubleValues() As Double = Nothing Dim retrieveDoubleValues() As Double = Nothing element = ds.InsertElement(Nothing, True, DicomTag.SelectorATValue, DicomVRType.AT, False, 0) doubleValues = New Double() {DicomTag.PatientName, DicomTag.PatientID, DicomTag.DigitalSignaturesSequence} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorISValue, DicomVRType.IS, False, 0) doubleValues = New Double() {-2147483648, 2147483647} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorSLValue, DicomVRType.SL, False, 0) doubleValues = New Double() {-2147483648, 2147483647} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorULValue, DicomVRType.UL, False, 0) doubleValues = New Double() {0, 4294967295} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorUSValue, DicomVRType.US, False, 0) doubleValues = New Double() {0, 65535} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorSSValue, DicomVRType.SS, False, 0) doubleValues = New Double() {-32768, 32767} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorFLValue, DicomVRType.FL, False, 0) doubleValues = New Double() {-1.2345F, +1.2345F} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) element = ds.InsertElement(Nothing, True, DicomTag.SelectorFDValue, DicomVRType.FD, False, 0) doubleValues = New Double() {-1.2345F, +1.2345F} ds.SetDoubleValueExt(element, doubleValues, doubleValues.Length) retrieveDoubleValues = ds.GetDoubleValueExt(element, 0, doubleValues.Length) CompareDoubleArrays(doubleValues, retrieveDoubleValues) MessageBox.Show("Finished") End Sub Public Sub CompareDoubleArrays(ByVal d1() As Double, ByVal d2() As Double) If d1 Is Nothing OrElse d2 Is Nothing Then Return End If If d1.Length <> d2.Length Then MessageBox.Show("Not Equal") Return End If For i As Integer = 0 To d1.Length - 1 If d1(i) <> d2(i) Then MessageBox.Show("Not Equal") Return End If Next i End Sub
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
DicomDataSet Class
DicomDataSet Members
SetValue Method
SetDoubleValue(DicomElement,IntPtr,Int32) Method
SetFloatValue(DicomElement,Single[],Int32) Method
SetIntValue(DicomElement,Int32[],Int32) Method
SetShortValue(DicomElement,Int16[],Int32) Method
SetByteValue(DicomElement,Byte[],Int32) Method
SetBinaryValue(DicomElement,Byte[],Int32) Method
SetStringValue(DicomElement,String[],DicomCharacterSetType) Method
SetAgeValue Method
SetDateValue(DicomElement,DicomDateValue[]) Method
SetTimeValue(DicomElement,DicomTimeValue[]) Method
SetDateTimeValue(DicomElement,DicomDateTimeValue[]) Method
SetConvertValue(DicomElement,String,Int32) Method