PDA

View Full Version : round elbow in isogen



ehsanaz
10-12-2006, 12:22 AM
hello

i use benetly autoplant ,i have problem with elbow in isometric

in isometric mode when i draw a elbow i know i can set it as a round elbow in setup and it is drawn as a round elbow but and again but : when i run autoiso from my 3d model the elbow isnot generated as a round elbow???!!

what can i do ? can anyone help me , ??

Colby
10-13-2006, 03:25 AM
I beleive this switch is locatated in the Project Adminstrator.

ehsanaz
10-15-2006, 01:57 AM
in which section of project administrator i can change the elbow shape??

Colby
10-16-2006, 06:47 PM
in which section of project administrator i can change the elbow shape??

I am terribly sorry there is no switch in the Project Administrator I was thinking of the Bonus tools that has/had a function to draw rounded Elbows If you look in the At_bonus.mnl you will see the Appropriate function to change the Elbow. I will do a little research to see if there s a more convenient way(I believe I have a ebs file that would do the trick I just have to go and fund it)

Bingo
10-17-2006, 02:22 AM
See the pictures:

Colby
10-17-2006, 03:32 AM
I am terribly sorry there is no switch in the Project Administrator I was thinking of the Bonus tools that has/had a function to draw rounded Elbows If you look in the At_bonus.mnl you will see the Appropriate function to change the Elbow. I will do a little research to see if there s a more convenient way(I believe I have a ebs file that would do the trick I just have to go and fund it)

Here is the EBS File to draw Rounded Elbows thru AutoPlant Isometrics





Sub at_Elbow_draw ()

Dim portPos(1) As At_Point '// Adjusted end position
Dim centerPoint As At_Point '// Center Point
Dim port1Dir As At_Vector '// Vector, port 1 direction
Dim port2Dir As At_Vector '// Vector, port 2 direction
Dim end1 As String '// End code for port 1
Dim end2 As String '// End code for port 2
Dim compID As At_ComponentID '// Component ID
Dim port1Or As At_Vector '// Vector, port 1 orientation
Dim port2Or As At_Vector '// Vector, port 2 orientation
Dim lineThickness As Double '// Line thickness
Dim vertices(2) As At_Point '// Vertices to create component
Dim port1OD As Double
Dim port2OD As Double
Dim redVertices(1) As At_Point
Dim elbow_status As String
Dim temp_Pt1 As At_Point
Dim XDir As At_Vector '// Vector, X - direction
Dim YDir As At_Vector '// Vector, Y - direction
Dim arc(16) As At_Point
'// Get params from spec and component

status = at_Component_getCurrID (compID)
status = at_Component_getPoint (portPos(0), compID, "Port1.Loc")
status = at_Component_getPoint (portPos(1), compID, "Port2.Loc")
status = at_Component_getPoint (centerPoint, compID, "CP.Loc")
status = at_Component_getPortEC (end1, compID, "Port1")
status = at_Component_getPortEC (end2, compID, "Port2")
status = at_Component_getVector (port1Dir, compID, "Port1.Dir")
status = at_Component_getVector (port2Dir, compID, "Port2.Dir")
status = at_Component_getVector (port1Or, compID, "Port1.Orient")
status = at_Component_getVector (port2Or, compID, "Port2.Orient")
status = at_Component_getReal (port1OD, compID, "PORT1OD_ISO")
status = at_Component_getReal (port2OD, compID, "PORT2OD_ISO")
status = at_Component_getVector(XDir, compID, "XDir")
status = at_Component_getVector(YDir, compID, "YDir")

'// Drawing begins

status = at_CADCurrObjectSet_begin()

'// Draw End symbols

Call at_drawEnd (compID, end1, portPos(0), port1Dir, port1Or)
Call at_drawEnd (compID, end2, portPos(1), port2Dir, port2Or)

'// Get line thickness

' status = at_Component_getReal(lineThickness, compID, "LineThickness") '// Modified By Colin Kemp 06/24/2003
'
' If (lineThickness < 0.001) Then
' lineThickness = 0.0
' End If

lineThickness = 0.03125

'// Create component

status = at_Preference_getString(elbow_status, "ROUND_ELBOW")
If (elbow_status="") Then
elbow_status = 0
End If
If ((status = AT_SUCCESS) And (elbow_status) And (port1OD = port2OD) ) Then
Call at_Point_translateByVector (temp_pt1, centerPoint, Port1Dir, 0.2*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(1), temp_pt1, Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(1), arc(1), Port2Dir, (0.2/40)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(2), arc(1), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(2), arc(2), Port2Dir, (0.2/30)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(3), arc(2), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(3), arc(3), Port2Dir, (0.2/30)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(4), arc(3), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(4), arc(4), Port2Dir, (0.2/25)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(5), arc(4), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(5), arc(5), Port2Dir, (0.2/25)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(6), arc(5), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(6), arc(6), Port2Dir, (0.2/20)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(7), arc(6), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(7), arc(7), Port2Dir, (0.2/20)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(8), arc(7), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(8), arc(8), Port2Dir, (0.2/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(9), arc(8), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(9), arc(9), Port2Dir, (0.2/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(10), arc(9), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(10), arc(10), Port2Dir, (0.2/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(11), arc(10), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(11), arc(11), Port2Dir, (0.2/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(12), arc(11), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(12), arc(12), Port2Dir, (0.2/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(13), arc(12), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(13), arc(13), Port2Dir, (0.2/10)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(14), arc(13), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(14), arc(14), Port2Dir, (0.2/10)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(15), arc(14), Port1Dir, -(0.20/15)*(at_point_distance(portpos(0),centerpoint)))
Call at_point_translateByVector (arc(15), arc(15), Port2Dir, (0.2/5)*(at_point_distance(portpos(0),centerpoint)))
Call at_Point_copy(arc(0),Portpos(0))
Call at_Point_copy(arc(16),Portpos(1))
CADObj = at_CAD2dShape_create (arc, 0, 0, lineThickness, lineThickness)
Else
If port1OD = port2OD Then

Call at_Point_copy(vertices(0),portPos(0))
Call at_Point_copy(vertices(1),centerPoint)
Call at_Point_copy(vertices(2),portPos(1))
CADObj = at_CAD2dShape_create (vertices, 0, 0, lineThickness, lineThickness)

Else

Call at_Point_translateByVector (redvertices(0), portPos(0), port2Dir, port1OD/4)
Call at_Point_translateByVector (vertices(0), portPos(0), port2Dir, -port1OD/4)
Call at_Point_translateByVector (vertices(1), centerPoint, port2Dir, -port1OD/4)

CADObj = at_CADline_create (redvertices(0), vertices(0))
CADObj = at_CADline_create (vertices(0), vertices(1))

Call at_Point_translateByVector (redvertices(1), portPos(1), port1Dir, port2OD/4)
Call at_Point_translateByVector (vertices(2), portPos(1), port1Dir, -port2OD/4)
CADObj = at_CADline_create (redvertices(1), vertices(2))

Call at_Point_translateByVector (vertices(0), vertices(1), port1Dir, -port2OD/4)
CADObj = at_CADline_create (vertices(0), vertices(1))
CADObj = at_CADline_create (vertices(0), vertices(2))

Call at_Point_translateByVector (vertices(0), centerPoint, port1Dir, port2OD/4)
Call at_Point_translateByVector (vertices(1), vertices(0), port2Dir, port1OD/4)
CADObj = at_CADline_create (vertices(1), redvertices(1))
CADObj = at_CADline_create (vertices(1), redvertices(0))

End If
End If

status = at_CADCurrObjectSet_addToDrawing()
Call at_CADCurrObjectSet_end()

End Sub

'//
'// Plastic module drop ear tee draw script
'//

Sub at_DropElbow_draw ()

Call at_Elbow_draw ()

End Sub








Now I need to Remeber how this works......

wuzhongbo
10-23-2006, 08:38 PM
Bingo's answer is right!

ehsanaz
11-09-2006, 12:38 PM
hello bingo

thnx for the reply for round elbow (u attach 3 pix)
ur way is right for round elbow but when we isogen by import/export as pcf file

i make my iso through autoiso menu in autoplant (when we run isometric..) ,in this way i cannot get round elbow !! plz send me reply if u have idea through private or public in isogen

thanks

Bingo
11-10-2006, 01:02 AM
Hi ehsanaz:
I am sorry I did not use isometric before.In china, most people use I-Sketch to draw ISO drawings.I will ask some people this question,if i have a solution,i can told you as soon as possible.