In Rhino V5 is there a way to control the lineweight widths when printing in 2d to assign them by colour, whilst at the same as having hatches in various colours.  For example, if I wanted all 'red' coloured lines to print at .25 lineweight, and all 'green' coloured lines to print at .35 lineweight regardless of what layer they are on.  Much like 'plotstyle' tables in other cad programs.

 

I know that you can control the print weight by layer.  But the problem is that if you want to have nicely printed 'black & white' various weighted line drawings together with coloured solid hatches - you have to select the 'print display color' option in the print dialog settings - which in turn means that every curve on your screen has to be black......which is difficult when working with mutliple layers and mutiple blocks.

 

So this is a question and a wish.......plotstyle tables in Rhino please?

 

If we had this, I would only need Rhino for all of my (input & output) 2d & 3d work.

Tags: 2d printing, plot styles

Views: 1089

Reply to This

Replies to This Discussion

Hi Simon- try this: Set the Filter in V5 to just Curves (Right clicking on the Curves check box in the Filters will de-select all others, Right clicking again will restore the previous state). Now, SelColor and pick on a red curve. In Properties, set Print color to black and print weight to whatever you like. Then when you print, regardless of the PrintDisplay setting (can be off, you can see your curves as red) the red curves will print in black at the weight you set, and red hatches will print red. Did I get that right?

-Pascal

pascal-at-mcneel-dot-com

Hi Pascal - Yes that's great, thank you so much.  So my next question now is: how can I set this as a template for all my drawings so that I'm not having to manually assign all the colours to print colours / widths each time I draw a new line?  Is this possible, so that I have a template drawing that automatically assigns red colour to 0.25 black, magenta to 0.13 Black etc. etc? Best, Simon. 

Hi Simon,

Am I correct that you need this:

An option to select all lines by color and give them a print width?

ColourA :: widthA

ColourB :: widthB

ColourC :: widthC

Hi Willem, in a way yes, but automatically - so that every red line I draw iin Rhino will print out black in 0.25 , and every magenta line I draw will print out black at 0.13 etc. regardless of layer.  What I don't want to do - is at the end of each drawing start changing all the colour lines and setting print widths & colours.

Hi Simon,

I wrote a quick script that might help you.
The script can be drag/dropped over Rhino (V5).

For now that is the only way to run it, but it can easily be made into a button
or command you can run before each plot/print.
(you can even change the print button to run this first)

The attached file can be edited with anything like notepad:

Near the top of the document is a list with 2 entries like this:

arrStyle(0) = array(255, 0, 0, 0.99, 0, 0, 0)

That is the setting for [RGB color of curves],[line width],[RGB printcolor]

The example above will be used on curves with
the color RGB(255,0,0) = red
set printwidth to 0.99
set printcolor to RGB(0,0,0) = black.

You can add styles by editing an entry in such a way. I have made 21 dummy entries, but more are possible.

I have no idea how experienced you are with using scripts so shout if anything is not clear.

Attachments:

Really appreciate your help, thank you so much.

I'm a complete beginner when it comes to using scripts.

I've loaded / run the script, then I go to print.....but nothing changes in the print :(  Is there something I missed?

I'm assuming that I select the 'print color' radio button (jn the print dialog box) and not 'display color' or 'black and white' as this defeats the object of the exercise. 

Also, will this script (when I get it working) override everything - e.g. lines, blocks, hatches, dimensions etc? I hope so.

 

 

I found the problem!

I needed to check 'match pattern definition' in the print dialog box :)

I'm not sure what you mean by "override everything".

Do you want everything with the color x to get linewidth Y and print color Z?

Currently only 'standalone' curve objects are set to the desired width and printcolor.

So anything in a block will be untouched. I'm not sure If it could be scripted to edit those as well..

EDIT: It appears fairly easy to edit objects inside blocks as well.

Yep....to override everything - Dimensions, Hatches, Blocks, curves, surfaces etc. Is this not possible? Basically I want the flexibility to import blocks & drawings prepared in other cad packages to work so that I have a single print output system for all - to get consistency across platforms.

Wow! That's a great solution for the time being. Thanks for writing that up, Willem!

Willem,

In play with this line weight script, it doesn't seem to affect curves that are blocked. If I insert a block that has lines in it colored for weight, I must insert them either as a group or individual parts. If inserted as a Block, the script doesn't effect the line weights. 

Any thoughts?

Hi Matthew,

What seems to work (although not as practical maybe) is this workflow:

Double click the block ( or run the _BlockEdit command) and then run the script.

HTH

Willem

RSS

Translate

© 2013   Created by McNeel Admin.

Badges  |  Report an Issue  |  Terms of Service