Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.3.25
|
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)
public boolean setDoubleValueExt(DicomElement element, double[]doubleValue, int count)
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 in that it can be called with any numeric value representation, including:
This example will insert several elements into a DICOM dataset, and then set and retrieve the values.
Imports Leadtools Imports Leadtools.Dicom ''' 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
using Leadtools; using Leadtools.Dicom; /// 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; } } }
using Leadtools.Dicom.Constants; using Leadtools; using Leadtools.Dicom; /// 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; } } }
using Leadtools; using Leadtools.Dicom; using Leadtools.Examples; /// 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; } } }
Imports Leadtools Imports Leadtools.Dicom ''' 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
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
SetStringValue(DicomElement,String[],DicomCharacterSetType) Method
SetStringValue(DicomElement,String) Method
SetStringValue(DicomElement,String[]) Method
SetStringValuePtr(DicomElement,IntPtr,Int32) Method
SetStringValuePtr(DicomElement,IntPtr,UInt32,DicomCharacterSetType) Method
SetAgeValue Method
SetDateValue(DicomElement,DicomDateValue[]) Method
SetTimeValue(DicomElement,DicomTimeValue[]) Method
SetDateTimeValue(DicomElement,DicomDateTimeValue[]) Method
SetConvertValue(DicomElement,String,Int32) Method