3D tubing lisp challenge

Discussion in 'AutoCAD' started by G Holmes, Dec 15, 2003.

  1. G Holmes

    G Holmes Guest

    Let me start this challenge with the statement that "I definitely am not a
    lsp writer" and this post might be a little long.

    In my recent self imposed crusade to find an automated routine to extrude a
    shape along a path in 3d space using ACAD2004 has come up dry. I have
    tested and tried over 20 different routines that I have found for extruding
    and none will pass. I have and use a number of methods to do this "manually"
    but all are very time consuming and full of places where errors and problems
    creep in. The most evident thing I found was the vast number of people
    looking for a similar thing. Personally I want to use it to make formed wire
    parts & I have seen people looking for same for tubing, drainage pipe,
    plumbing & wiring. All the lisp routines out on the web that I and others
    have found don't work on 90% of what I need to do and were written back in
    the early 90"s.
    It is a very simple thing to make a "3d poly" and extrude a shape along its
    length in 3d space as long as there is no radius requirements in the path.
    A drawn arc can be turned into a lt weight poly but can't be joined to the
    3d poly to form a continuous path which stops the ACAD extrusion process.

    Here is the basis for the lisp challenge to whom wants to take it on.

    (1.) Be able to group pick a series of lines & arcs drawn in free 3d space.
    (2.) For the lack of better terms "Chain or Join" them into a useable path.
    (3.) Pick a drawn shape or shapes at one end of this path to be extruded
    along it.
    (4.) Extrude this shape or shapes to be a solid so holes or cuts can be
    subtracted from it.

    Good luck and a bunch of people are looking...................

    Tks
    Gene
     
    G Holmes, Dec 15, 2003
    #1
  2. G Holmes

    jochen Guest

    Hi Gene,
    1. Try out my PEDIT3D from www.black-cad.de to join any 3d-line segments
    (i.e. linear, circular elliptical and splines) to a unique 3d-polyline.
    But saying the truth: the arcs and splines are divided in short linear
    segments. You can determine the number of segments.
    2. Did you try the TurboTube-program from a german team in Göttingen? Try it
    too.
    3. I have a routine to create real arcs (toroidal segments) for the
    (2-dimensional) circular arcs in the 3d-polyline.
    4. I worte a routine to create eccentric reducers round-to-round and
    round-to square both in surface and in solid-modelling.
    In case of interest contact me via www.black-cad.de
    Regards
    Jochen
     
    jochen, Dec 15, 2003
    #2
  3. G Holmes

    Gene Holmes Guest

    Thanks...... I tried it.
    Will not work correctly in my ACAD2004.
     
    Gene Holmes, Dec 15, 2003
    #3
  4. G Holmes

    G Holmes Guest

    Sorry Jochen
    Tried it again. Here is the copy from ACAD text screen.
    Hope this helps you. It just stopped................didn't do anything.Command: _appload pedit3d.fas successfully loaded.
    Command:
    Command: polynz
    OSMODE
    Enter new value for OSMODE <183>: 0
    Command: _AUNITS
    Enter new value for AUNITS <0>: 3
    Command:
    Select objects: Specify opposite corner: 30 found

    Select objects: 1 found, 1 removed, 29 total

    Select objects:

    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POINT
    type POLYLINEhier poly_UCS
    Current ucs name: *LEFT*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command:
    type ARC_UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command: _UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _E
    Select object to align UCS:
    Command: _UCS
    Current ucs name: *NO NAME*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command:
    type LINE_UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command:
    type ARC_UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command: _UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _E
    Select object to align UCS:
    Command: _UCS
    Current ucs name: *NO NAME*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command:
    type ARC_UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command: _UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _E
    Select object to align UCS:
    Command: _UCS
    Current ucs name: *NO NAME*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command:
    type LINE_UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command:
    type LINE_UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command:
    type LINE_UCS
    Current ucs name: *WORLD*
    Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]
    <World>: _W
    Command: ; error: bad argument type: 2D/3D point: nil
     
    G Holmes, Dec 20, 2003
    #4
  5. G Holmes

    G Holmes Guest

    Here is the ACAD listiing of the actual (path) line..
    Hope this helps also.

    GeneCommand: _list 1 found

    POLYLINE Layer: "0"
    Space: Model space
    Handle = 2A5
    Open
    starting width 0.0000
    ending width 0.0000
    Extrusion direction relative to UCS:
    X= 1.0000 Y= 0.0000 Z= 0.0000
    area 0.0000
    length 0.0300

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2A6
    at point, X= -15.0122 Y= -0.0548 Z= -17.5626
    starting width 0.0000
    ending width 0.0000

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2A7
    Press ENTER to continue:

    Command: Specify opposite corner:
    Command:
    Command:
    Command: _list 8 found

    POLYLINE Layer: "0"
    Space: Model space
    Handle = 2B9
    Open
    starting width 0.0000
    ending width 0.0000
    Extrusion direction relative to UCS:
    X= 1.0000 Y= 0.0000 Z= 0.0000
    area 0.0000
    length 0.0624

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2BA
    at point, X= -15.1122 Y= -0.0335 Z= -17.4446
    starting width 0.0000
    ending width 0.0000

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2BB
    at point, X= -15.1122 Y= -0.0514 Z= -17.5043
    starting width 0.0000
    ending width 0.0000

    END SEQUENCE Layer: "0"
    Space: Model space
    Handle = 2BC


    POLYLINE Layer: "0"
    Space: Model space
    Handle = 2B5
    Open
    starting width 0.0000
    ending width 0.0000
    Extrusion direction relative to UCS:
    X= 0.0000 Y= 0.9578 Z= -0.2873
    area 0.0000
    length 0.1325

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2B6
    at point, X= -15.0122 Y= 0.0000 Z= -17.3330
    starting width 0.0000
    ending width 0.0000

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2B7
    at point, X= -15.1039 Y= -0.0275 Z= -17.4247
    starting width 0.0000
    ending width 0.0000

    END SEQUENCE Layer: "0"
    Space: Model space
    Press ENTER to continue:
    Handle = 2B8


    POLYLINE Layer: "0"
    Space: Model space
    Handle = 2B1
    Open
    starting width 0.0000
    ending width 0.0000
    area 0.0000
    length 0.0400

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2B2
    at point, X= -15.0422 Y= -0.0600 Z= -17.5330
    starting width 0.0000
    ending width 0.0000

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2B3
    at point, X= -15.0822 Y= -0.0600 Z= -17.5330
    starting width 0.0000
    ending width 0.0000

    END SEQUENCE Layer: "0"
    Space: Model space
    Handle = 2B4


    POLYLINE Layer: "0"
    Space: Model space
    Handle = 2AD
    Open
    starting width 0.0000
    ending width 0.0000
    Extrusion direction relative to UCS:
    X= 0.0000 Y= 0.9578 Z= -0.2873
    area 0.0003
    length 0.0471

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2AE
    at point, X= -15.0822 Y= -0.0600 Z= -17.5330
    starting width 0.0000
    ending width 0.0000
    bulge 0.4142
    center X= -15.0822 Y= -0.0514 Z= -17.5043
    radius 0.0300
    total angle 90

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2AF
    at point, X= -15.1122 Y= -0.0514 Z= -17.5043
    starting width 0.0000
    ending width 0.0000
    Press ENTER to continue:

    END SEQUENCE Layer: "0"
    Space: Model space
    Handle = 2B0


    POLYLINE Layer: "0"
    Space: Model space
    Handle = 2A9
    Open
    starting width 0.0000
    ending width 0.0000
    Extrusion direction relative to UCS:
    X= 0.0000 Y= 0.9578 Z= -0.2873
    area 0.0000
    length 0.0229

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2AA
    at point, X= -15.1122 Y= -0.0335 Z= -17.4446
    starting width 0.0000
    ending width 0.0000
    bulge 0.1933
    center X= -15.0822 Y= -0.0335 Z= -17.4446
    radius 0.0300
    total angle 44

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2AB
    at point, X= -15.1039 Y= -0.0275 Z= -17.4247
    starting width 0.0000
    ending width 0.0000

    END SEQUENCE Layer: "0"
    Space: Model space
    Handle = 2AC


    POLYLINE Layer: "0"
    Space: Model space
    Handle = 2A5
    Open
    starting width 0.0000
    ending width 0.0000
    Extrusion direction relative to UCS:
    X= 1.0000 Y= 0.0000 Z= 0.0000
    area 0.0000
    length 0.0300

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2A6
    at point, X= -15.0122 Y= -0.0548 Z= -17.5626
    starting width 0.0000
    ending width 0.0000

    VERTEX Layer: "0"
    Press ENTER to continue:
    Space: Model space
    Handle = 2A7
    at point, X= -15.0122 Y= -0.0496 Z= -17.5921
    starting width 0.0000
    ending width 0.0000

    END SEQUENCE Layer: "0"
    Space: Model space
    Handle = 2A8


    POLYLINE Layer: "0"
    Space: Model space
    Handle = 2A1
    Open
    starting width 0.0000
    ending width 0.0000
    Extrusion direction relative to UCS:
    X= 0.0000 Y= -0.9848 Z= -0.1736
    area 0.0003
    length 0.0471

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2A2
    at point, X= -15.0122 Y= -0.0548 Z= -17.5626
    starting width 0.0000
    ending width 0.0000
    bulge 0.4142
    center X= -15.0422 Y= -0.0548 Z= -17.5626
    radius 0.0300
    total angle 90

    VERTEX Layer: "0"
    Space: Model space
    Handle = 2A3
    at point, X= -15.0422 Y= -0.0600 Z= -17.5330
    starting width 0.0000
    ending width 0.0000

    END SEQUENCE Layer: "0"
    Space: Model space
    Handle = 2A4


    POLYLINE Layer: "0"
    Space: Model space
    Handle = 194
    Open
    starting width 0.0000
    ending width 0.0000
    Extrusion direction relative to UCS:
    X= 1.0000 Y= 0.0000 Z= 0.0000
    area 0.0000
    length 0.7772

    VERTEX Layer: "0"
    Space: Model space
    Handle = 195
    Press ENTER to continue:
    at point, X= -15.0122 Y= 0.0000 Z= -16.5558
    starting width 0.0000
    ending width 0.0000

    VERTEX Layer: "0"
    Space: Model space
    Handle = 196
    at point, X= -15.0122 Y= 0.0000 Z= -17.3330
    starting width 0.0000
    ending width 0.0000

    END SEQUENCE Layer: "0"
    Space: Model space
    Handle = 197
     
    G Holmes, Dec 21, 2003
    #5
Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.