Option Explicit
Private Const RADIN = 3.1415926 / 180
Type ENTITY
lEntityId As Long
sEntityName As String
fEntityLength As Double
lEntityColor As Long
fStartX As Double
fStartY As Double
fEndX As Double
fEndY As Double
fBoundingBoxLeft As Double
fBoundingBoxBottom As Double
fBoundingBoxRight As Double
fBoundingBoxTop As Double
sLayer As String
End Type
Type LAYER
lIndex As Long
sName As String
lNum As Long
End Type
Type PTLWPL
x As Double
y As Double
fBulbe As Double
End Type
Private Sub ReadDXF(ByVal dxfFile As String)
Dim colors As Variant
colors = Array( _
RGB(255, 255, 255), RGB(255, 0, 0), RGB(255, 255, 0), RGB(0, 255, 0), RGB(0, 255, 255), RGB(0, 0, 255), RGB(255, 0, 255), RGB(255, 255, 255), RGB(128, 128, 128), RGB(192, 192, 192), RGB(255, 0, 0), RGB(255, 127, 127), RGB(204, 0, 0), RGB(204, 102, 102), RGB(153, 0, 0), RGB(153, 76, 76), RGB(127, 0, 0), RGB(127, 63, 63), RGB(76, 0, 0), RGB(76, 38, 38), RGB(255, 63, 0), _
RGB(255, 159, 127), RGB(204, 51, 0), RGB(204, 127, 102), RGB(153, 38, 0), RGB(153, 95, 76), RGB(127, 31, 0), RGB(127, 79, 63), RGB(76, 19, 0), RGB(76, 47, 38), RGB(255, 127, 0), RGB(255, 191, 127), RGB(204, 102, 0), RGB(204, 153, 102), RGB(153, 76, 0), RGB(153, 114, 76), RGB(127, 63, 0), RGB(127, 95, 63), RGB(76, 38, 0), RGB(76, 57, 38), RGB(255, 191, 0), RGB(255, 223, 127), RGB(204, 153, 0), _
RGB(204, 178, 102), RGB(153, 114, 0), RGB(153, 133, 76), RGB(127, 95, 0), RGB(127, 111, 63), RGB(76, 57, 0), RGB(76, 66, 38), RGB(255, 255, 0), RGB(255, 255, 127), RGB(204, 204, 0), RGB(204, 204, 102), RGB(153, 153, 0), RGB(153, 153, 76), RGB(127, 127, 0), RGB(127, 127, 63), RGB(76, 76, 0), RGB(76, 76, 38), RGB(191, 255, 0), RGB(223, 255, 127), RGB(153, 204, 0), RGB(178, 204, 102), RGB(114, 153, 0), _
RGB(133, 153, 76), RGB(95, 127, 0), RGB(111, 127, 63), RGB(57, 76, 0), RGB(66, 76, 38), RGB(127, 255, 0), RGB(191, 255, 127), RGB(102, 204, 0), RGB(153, 204, 102), RGB(76, 153, 0), RGB(114, 153, 76), RGB(63, 127, 0), RGB(95, 127, 63), RGB(38, 76, 0), RGB(57, 76, 38), RGB(63, 255, 0), RGB(159, 255, 127), RGB(51, 204, 0), RGB(127, 204, 102), RGB(38, 153, 0), RGB(95, 153, 76), _
RGB(31, 127, 0), RGB(79, 127, 63), RGB(19, 76, 0), RGB(47, 76, 38), RGB(0, 255, 0), RGB(127, 255, 127), RGB(0, 204, 0), RGB(102, 204, 102), RGB(0, 153, 0), RGB(76, 153, 76), RGB(0, 127, 0), RGB(63, 127, 63), RGB(0, 76, 0), RGB(38, 76, 38), RGB(0, 255, 63), RGB(127, 255, 129), RGB(0, 204, 51), RGB(102, 204, 127), RGB(0, 153, 38), RGB(76, 153, 95), RGB(0, 127, 31), RGB(63, 127, 79), _
RGB(0, 76, 19), RGB(38, 76, 47), RGB(0, 255, 127), RGB(127, 255, 191), RGB(0, 204, 102), RGB(102, 204, 153), RGB(0, 153, 76), RGB(76, 153, 114), RGB(0, 127, 63), RGB(63, 127, 95), RGB(0, 76, 38), RGB(38, 76, 57), RGB(0, 255, 191), RGB(127, 255, 223), RGB(0, 204, 153), RGB(102, 204, 178), RGB(0, 153, 114), RGB(76, 153, 133), RGB(0, 127, 95), RGB(63, 127, 111), RGB(0, 76, 57), RGB(38, 76, 66), RGB(0, 255, 255), _
RGB(127, 255, 255), RGB(0, 204, 204), RGB(102, 204, 204), RGB(0, 153, 153), RGB(76, 153, 153), RGB(0, 127, 127), RGB(63, 127, 127), RGB(0, 76, 76), RGB(38, 76, 76), RGB(0, 191, 255), RGB(127, 223, 255), RGB(0, 153, 204), RGB(102, 178, 204), RGB(0, 114, 153), RGB(76, 133, 153), RGB(0, 95, 127), RGB(63, 111, 127), RGB(0, 57, 76), RGB(38, 66, 76), RGB(0, 127, 255), RGB(127, 191, 255), RGB(0, 102, 204), _
RGB(102, 153, 204), RGB(0, 76, 153), RGB(76, 114, 153), RGB(0, 63, 127), RGB(63, 95, 127), RGB(0, 38, 76), RGB(38, 57, 76), RGB(0, 63, 255), RGB(127, 159, 255), RGB(0, 51, 204), RGB(102, 127, 204), RGB(0, 38, 153), RGB(76, 95, 153), RGB(0, 31, 127), RGB(63, 79, 127), RGB(0, 19, 76), RGB(38, 47, 76), RGB(0, 0, 255), RGB(127, 127, 255), RGB(0, 0, 204), RGB(102, 102, 204), RGB(0, 0, 153), RGB(76, 76, 153), _
RGB(0, 0, 127), RGB(63, 63, 127), RGB(0, 0, 76), RGB(38, 38, 76), RGB(63, 0, 255), RGB(159, 127, 255), RGB(51, 0, 204), RGB(127, 102, 204), RGB(38, 0, 153), RGB(95, 76, 153), RGB(31, 0, 127), RGB(79, 63, 127), RGB(19, 0, 76), RGB(47, 38, 76), RGB(127, 0, 255), RGB(191, 127, 255), RGB(102, 0, 204), RGB(153, 102, 204), RGB(76, 0, 153), RGB(114, 76, 153), _
RGB(63, 0, 127), RGB(95, 63, 127), RGB(38, 0, 76), RGB(57, 38, 76), RGB(191, 0, 255), RGB(223, 127, 255), RGB(153, 0, 204), RGB(178, 102, 204), RGB(114, 0, 153), RGB(133, 76, 153), RGB(95, 0, 127), RGB(111, 63, 127), RGB(57, 0, 76), RGB(66, 38, 76), RGB(255, 0, 255), RGB(255, 127, 255), RGB(204, 0, 204), RGB(204, 102, 204), RGB(153, 0, 153), RGB(153, 76, 153), _
RGB(127, 0, 127), RGB(127, 63, 127), RGB(76, 0, 76), RGB(76, 38, 76), RGB(255, 0, 191), RGB(255, 127, 223), RGB(204, 0, 153), RGB(204, 102, 178), RGB(153, 0, 114), RGB(153, 76, 133), RGB(127, 0, 95), RGB(127, 63, 111), RGB(76, 0, 57), RGB(76, 38, 66), RGB(255, 0, 127), RGB(255, 127, 191), RGB(204, 0, 102), RGB(204, 102, 153), RGB(153, 0, 76), RGB(153, 76, 114), _
RGB(127, 0, 63), RGB(127, 63, 95), RGB(76, 0, 38), RGB(76, 38, 57), RGB(255, 0, 63), RGB(255, 127, 159), RGB(204, 0, 51), RGB(204, 102, 127), RGB(153, 0, 38), RGB(153, 76, 95), RGB(127, 0, 31), RGB(127, 63, 79), RGB(76, 0, 19), RGB(76, 38, 47), RGB(51, 51, 51), RGB(91, 91, 91), RGB(132, 132, 132), RGB(173, 173, 173), RGB(214, 214, 214), RGB(255, 255, 255) _
)
Dim codes As Variant
Dim lastObj As String
Dim xs, ys, xe, ye, t
Dim ent As ENTITY
Dim u As Long
Dim pts() As PTLWPL
Dim arrLayer() As LAYER
Dim lIndex As Long
Dim lItem As Long
Dim coordinates(0 To 3) As Double
Dim lw As AcadLWPolyline
Dim fLen As Double
Dim fBulbe As Double
Dim xm As Double, ym As Double, xc As Double, yc As Double
Dim fChord As Double, fInclAng As Double, fAng As Double, fRad As Double, fFlag As Double, c As Double, d As Double, h As Double
|