18-12-12, 03:18 AM
@@أبورائد@@ كتب :السلام عليكم ورحمة الله وبركاته
إعتمادا على ما وضعتموه من مثال المكعب، عملت لكم طريقتين لوضع الإحداثيات
أولا: التصريح عن مصفوفة خاصة بالمكعب كالتالي
كود :
' المكعب له 8 نقاط، ولكل نقطة 3 إحداثيات
' بما أن فهرس المصفوفة في البرمجة يبدأ من الصفر
' فننشئ المصفوفة كالتالي
Dim PointsArray(7, 2) As Double
' الـ 7 هي الثمان نقاط للمكعب وتحسب مع الصفر
' الـ 2 هي الثلاث إحداثيات وتحسب مع الصفر
ثانيا: الطريقة الأولى لوضع قيم إحداثيات النقاط في المصفوفة
كود :
' إحداثيات النقطة الأولى وهي الصفر
' {0, 40, 0}
PointsArray(0, 0) = 0
PointsArray(0, 1) = 40
PointsArray(0, 2) = 0
' إحداثيات النقطة الثانية
' {0, 40, 50}
PointsArray(1, 0) = 0
PointsArray(1, 1) = 40
PointsArray(1, 2) = 50
' {50, 40, 0}
PointsArray(2, 0) = 50
PointsArray(2, 1) = 40
PointsArray(2, 2) = 0
' {50, 40, 50}
PointsArray(3, 0) = 50
PointsArray(3, 1) = 40
PointsArray(3, 2) = 50
' {0, 0, 50}
PointsArray(4, 0) = 0
PointsArray(4, 1) = 0
PointsArray(4, 2) = 50
' {50, 0, 50}
PointsArray(5, 0) = 50
PointsArray(5, 1) = 0
PointsArray(5, 2) = 50
' {50, 0, 0}
PointsArray(6, 0) = 50
PointsArray(6, 1) = 0
PointsArray(6, 2) = 0
' {0, 0, 0}
PointsArray(7, 0) = 0
PointsArray(7, 1) = 0
PointsArray(7, 2) = 0
الطريقة الثانية (وهي تختصر الكود) لوضع قيم إحداثيات النقاط في المصفوفة بالاستعانة بدالة
الدالة SetPoint3Dكود :
' SetPoint3D طريقة أخرى مختصرة لوضع إحداثيات النقاط تستعين بالدالة
SetPoint3D(PointsArray, 0, 0, 40, 0)
SetPoint3D(PointsArray, 1, 0, 40, 50)
SetPoint3D(PointsArray, 2, 50, 40, 0)
SetPoint3D(PointsArray, 3, 50, 40, 50)
SetPoint3D(PointsArray, 4, 0, 0, 50)
SetPoint3D(PointsArray, 5, 50, 0, 50)
SetPoint3D(PointsArray, 6, 50, 0, 0)
SetPoint3D(PointsArray, 7, 0, 0, 0)
كود :
' SetPoint3D الدالة
Public Sub SetPoint3D(ByRef array As Array, ByVal Point As Integer, ByVal x As Double, ByVal y As Double, ByVal z As Double)
array(Point, 0) = x
array(Point, 1) = y
array(Point, 2) = z
End Sub
أرجو أن أكون أفدتكم
السلام عليكم ورحمة الله وبركاته
شكرا لك اخي ولك من اهتم بالموضع
لقد نجحت الفكرة
