Title: Exhibition Pavilion
1Exhibition Pavilion
- Const node 5
- Const last 10
- Const twopi 2 3.1415
- Const seg 40
- Const yrad 30
- Sub drawing_one()
- Dim n As Integer, i As Integer, a As Integer
- Dim pt(last 3 - 1) As Double
- Dim poly(1 To node) As Acad3DPolyline
- Dim fraction As Double
- Dim face As Acad3DFace
- Dim col As New AcadAcCmColor
- ThisDrawing.SendCommand "erase all "
- fraction twopi / seg
'defining the fraction to be used in
calculation of nodes
2- Const points 20
- Const segments 20
- Const circles 10
- Const twopi 2 3.1415
- Const xrad 12
- Const yrad 5
- Sub main()
- Dim i As Integer, p As Integer, c As Integer
- Dim poly(1 To circles) As Acad3DPolyline
'polyline array to form the base for the
surfaces - Dim pts(points 3 - 1) As Double
'points for the polyline - Dim face As Acad3DFace
'the surface between the polylines - Dim col As New AcadAcCmColor
'colour - Dim box As Acad3DSolid
'the base a box - Dim basepoint As Variant, basepoint2 As Variant
'the centre /basepoint of the boxes - Dim tie As Acad3DSolid
'tie at initial points of poly - Dim strings As AcadLine
'lines from polys to ground
Canopy Pavilion
3Canopy
- Const maxnodes 50
- Const copy 2
- Type node
- fin_pos(2) As Double
- temp_pos As Double
- link_pos As Double
- End Type
- Public Chain As AcadSpline
- Public chain2 As AcadSpline
- Public face As Acad3DFace
- Public line As AcadLine
- Public line2 As AcadLine
- Sub main()
- Dim nodes(maxnodes) As node
- ThisDrawing.SendCommand "erase all "
Sub start(nodes() As node) Dim pts((maxnodes
1) 3 - 1) As Double Dim st(2) As Double Dim
et(2) As Double Dim base As Variant, base_c As
Variant Dim col As New AcadAcCmColor For i 0
To maxnodes nodes(i).fin_pos(0) i
nodes(i).fin_pos(1) Rnd 20
nodes(i).fin_pos(2) 0 pts(p)
nodes(i).fin_pos(0) pts(p 1)
nodes(i).fin_pos(1) pts(p 2)
nodes(i).fin_pos(2) p p 3 Next i Set
Chain ThisDrawing.ModelSpace.AddSpline(pts, st,
et) Set chain2 Chain.copy base
Chain.GetFitPoint(0) base(1) base(1)
10 chain2.Move Chain.GetFitPoint(0), base For i
1 To maxnodes - 1 Set face
ThisDrawing.ModelSpace.Add3DFace(Chain.GetFitPoint
(i), Chain.GetFitPoint(i 1), chain2.GetFitPoint(
i 1), Chain.GetFitPoint(i)) col.SetRGB 255,
26, 67 face.TrueColor col base_c
Chain.GetFitPoint(i) base_c(2) -5 Set
line ThisDrawing.ModelSpace.AddLine(Chain.GetFit
Point(i), base_c) base_c
chain2.GetFitPoint(i) base_c(2) -5 Set
line ThisDrawing.ModelSpace.AddLine(chain2.GetFi
tPoint(i), base_c) Next i ZoomExtents End
Sub