Jump to content

Need better multiline


Vigilante

Recommended Posts

Hello Ronso,

 

The centre line in the pipe is realy good except for the curved portion the centre line do not appear. If you could modify the same it would be a greate routine.

 

Milind

 

Hello Ronso,

 

Nice that you have picked this one again... I have tried several things with it but the routine is kind of complex.

Please read my post #128: can you tell me if this is possible anyway?

 

I had modified the code like I said but then I got all strange result like corners in 45degrees in stead of 90 degrees. I know that I did something wrong but couldn't solve it...

 

Thanks for the reply!

Link to comment
Share on other sites

Hello Milind and Marco,

 

As centerlines are drawn to the intersection at corners with revised routine, are you preferring the centerlines be arcs for radius elbows?

 

As for predefining the inputs, have you looked at creating a command macro with a toolbar, toolpallette, or menu item? This would provide the simplest solution.

 

You could also define the predefined command inputs in a script file like the one attached and load the script file with lisp. (drag the attached script file into AutoCAD drawing area to see functionality)

 

Please advise.

WPIPE[7].scr

Link to comment
Share on other sites

Awesome work Ronso and whoever made the original ;)

 

The only problem i see from a realistic point of view, Instead of specifying an inside radius for the bends, Normally you have a centerline radius equal to the width(diameter) or 1.5 times the width(diameter. Good stuff though!

Link to comment
Share on other sites

Hi Ronso,

 

Yes I am fully aware of the capabilities of macro's.

But macro's should be executed from within a menu like you said (or toolpalette)...

I have a lisp (dcl) with a button, when I click that one it should execute what I want.

Is there a way to execute a script from within a lisp file?

 

Thnaks mate.

MarcoW.

 

Neah.... won't work... Imagine radius / mitered etc... all the diameters, hatch or not hatch... There's gonna be too much scrip files.

 

There should be a way to do it in the lisp itself so the command to execute would be:

 

 
(c:wpipe "Radius" "150" "None" "Yes" "300")

 

See? Thats the info from the script...

 

Just like my example in a few post before this one:

 

 
(defun c:wpipe (
Type; string (= "radius" or "segmented" or "mitered"
Throatdia; string (ie. "150"
Hatching; string (= "Yes" or "No")
LineType; string (ie. "continuous")
Diameter; string (ie. "150")
/
LocalizedVars)
...

Link to comment
Share on other sites

I am not sure, Maybe its just me. I do not understand this interest in multiline for use in duct work or piping. While you can draw duct with elbows in continuous sections without stopping which may seem faster to some then components, It leaves the question, How will you retrofit this duct later? You cannot remove the elbows, tees, or transitions like you would if it were components in the first place. This means that with any duct changes later, You would have to draw it all over again. Is there something I am missing here?

 

Can someone please explain how you edit this later?

Link to comment
Share on other sites

@ The Buzzard: you are totally right.

As you say it, is exactly the way it works, and yes, "edit" means draw all over.

 

I am trying to make my own ducting program but lack of time is haunting me.

Mine would be with blocks as elbows / tees. The rest would be plain lines.

 

Btw: the lisp wpipe does use multilines only as preview. Once placed they are polylines.

This trick I use too... Because in grrdraw one cannot use osnaps easy.

 

Regards,

MarcoW

Link to comment
Share on other sites

@ The Buzzard: you are totally right.

As you say it, is exactly the way it works, and yes, "edit" means draw all over.

 

I am trying to make my own ducting program but lack of time is haunting me.

Mine would be with blocks as elbows / tees. The rest would be plain lines.

 

Btw: the lisp wpipe does use multilines only as preview. Once placed they are polylines.

This trick I use too... Because in grrdraw one cannot use osnaps easy.

 

Regards,

MarcoW

 

Well, I aready went the route and while my program does components, I was not too happy about all the error trapping required. It became much of a mess. I figure when I get some time I will redo my two duct programs over. At least any components can be removed for changes and because I used lwpolylines, They can be stretched easy to shorten or lengthen the duct without making a major project out of it. It just seems to me many want to go this route of multiline without looking ahead when the changes come around.

 

Just out of curiosity, Why do your elbows & tees need to be blocks? They can be drawn very easy as a closed lwpolyline also.

Link to comment
Share on other sites

MarcoW,

 

I just tested WPIPE[6.1].lsp plus WPIPE[7].lsp and it seems OK although it could be error trapped better. Also the options are very limited. I think this would be a real cool program if it was dialog driven with many options available. I like the fact that you can remove the elbows and they are polylines, But I am not so sure how you would incorporate tees & transitions with this program.

 

Can this be done?

Link to comment
Share on other sites

The Buzzard;

 

Tbh: I think there can be done a lot more than what it is now but my knowledge is lacking, the lisp is very complex.

I wouldn know where to start to really modify the code.

 

My idea of a new program is simple: create a multiline to use as temporary duct.

THis temporary duct starts with the first mouseclich until the second. In the meantime you see the duct "rubberbanding" from cursorposition.

When clicking the second point, the multiline itself is erased and a rectangle (or closed polyline / closed lines that form a rectangle) is created.

The multiline will now pop up again, awaiting the third point. The result is the same only we have one more value: angle between '(p1 p2) '(p2 p3)... if you get my point...

I think it is possible to have a block (ie. elbow) that measures 1 millimeter in ductsize. After placing the third point the elbow is inserted at a certtain point and scaled up by the desired duct size.

 

To do this, I need a lot of time and study wich unfortunately I cannot do now. It'll have to wait a few month I am afraid... :(

Link to comment
Share on other sites

The Buzzard;

 

Tbh: I think there can be done a lot more than what it is now but my knowledge is lacking, the lisp is very complex.

I wouldn know where to start to really modify the code.

 

My idea of a new program is simple: create a multiline to use as temporary duct.

THis temporary duct starts with the first mouseclich until the second. In the meantime you see the duct "rubberbanding" from cursorposition.

When clicking the second point, the multiline itself is erased and a rectangle (or closed polyline / closed lines that form a rectangle) is created.

The multiline will now pop up again, awaiting the third point. The result is the same only we have one more value: angle between '(p1 p2) '(p2 p3)... if you get my point...

I think it is possible to have a block (ie. elbow) that measures 1 millimeter in ductsize. After placing the third point the elbow is inserted at a certtain point and scaled up by the desired duct size.

 

To do this, I need a lot of time and study wich unfortunately I cannot do now. It'll have to wait a few month I am afraid... :(

 

Well I was only thinking at some point you will need to go to a different option as when it comes to switching to a different component. Another words at the right click of the mouse instead of a left click to chose another point the program would start over with its list of options to choose from. I think it would better in my own opinion if you could do this through a dialog, But will have to see where this program goes or evolves to.

 

Just a thought.

Link to comment
Share on other sites

  • 1 month later...

Ronso,

 

I went through this thread again because my problem still isn't solved.

 

In post number 144 I wrote this:

Hi Ronso,

 

Yes I am fully aware of the capabilities of macro's.

But macro's should be executed from within a menu like you said (or toolpalette)...

I have a lisp (dcl) with a button, when I click that one it should execute what I want.

Is there a way to execute a script from within a lisp file?

 

Thnaks mate.

MarcoW.

 

Neah.... won't work... Imagine radius / mitered etc... all the diameters, hatch or not hatch... There's gonna be too much scrip files.

 

There should be a way to do it in the lisp itself so the command to execute would be:

 

 
[b][color=darkred](c:wpipe "Radius" "150" "None" "Yes" "300")[/color][/b]

 

See? Thats the info from the script...

 

Just like my example in a few post before this one:

 

 
(defun c:wpipe (
Type; string (= "radius" or "segmented" or "mitered"
Throatdia; string (ie. "150"
Hatching; string (= "Yes" or "No")
LineType; string (ie. "continuous")
Diameter; string (ie. "150")
/
LocalizedVars)
...

 

Now, the red part obiously won't work. Reason is because there can be no arguments passed in the routine as it is.

If I change the routine (defun c:wipe (Type Radius ...etc. ) it still won't work.

 

This post, number 86, describes how I have set it up using menu's and toolpalettes in combination with macro's.

 

Just set a MACRO to a Toolbar Icon, or Tool Palette Icon.

 

^C^C_WPIPE;R;100;

 

This will make it a 100mm radius every time. :)

 

The blue part will work only as a macro in a toolpalette or whatever. So when it comes to the macro stuff, this I understand but is not the approach.

 

 

My point is how can I enter a command on the command line so with one command it does what I need like:

 

 
Command: (c:wpipe "Radius" "150" "None" "Yes" "300")

 

I will try to reproduce my modified lisp (I seem to have deleted it) and maybe you can then see whats going on.

 

I truely appreciate any help!

Kind regards,

MarcoW

Link to comment
Share on other sites

Here is my reproduction, I have no clue if I am somewhat correct or maybe totally lost.... Bigger parts of this code are way above my capabilities. :oops:

 

 

Btw, I said "question for Ronso" but of course all useable replies are welcome.

Just mentioned Ronso because he seems to have done a lot in this great lisp before.

Also, if there were a possibility, I would like to credit Asmi for his job.

Too bad he ain't around the Cad forums no more

wpipe[8].LSP

Link to comment
Share on other sites

Marco....

 

The Red Part can't work because there is no c:wpipe function.

You've said the routine do not work....but what is your error message ?

the lisp provided work great until I dont right clic...is that what you mean ?

 

Digger,....thanks for the compliment.

you can also try the last release of SDUCT on my website.

 

cheers. ! ;-)

 

Andrea.

Link to comment
Share on other sites

  • 2 months later...

Hi guys...

 

I am newby to write lisp and would like to ask you few questions about duct.lsp.

 

first of all thank you everyone who has edited and spending their times to help us to editing that lisp.

 

I am a draftsman and that lisp is very helping and saving my time at my work. But I want you to help me to add an option:)))

 

I want from lisp masters to option for drawing duct with specified insulation thickness that lisp asked me when I need.

 

is there any one to help me?

 

thank you..

Link to comment
Share on other sites

Hi Fmer,

 

Welcome to the CadTutor forum!

 

This lisp is kinda complicated so there is not much chance anyone will jump in. But you never know...

I have asked several things in the past regarding this routine with a secret hope that one of the original authors would help me out.

 

Maybe post a picture of what you want to achieve. It would certainly clear things up.

And if I can I will help you out myself.

 

Regards,

MarcoW.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...