Rhino WIP Feature: Shapes in linetypes

This is very very early in development, but there is enough in place for people to try it out and start providing feedback.

Rhino WIP linetypes now support shapes positioned at intervals along curves.

The command is still being tested and refined.
Let us know what works for you and what does not.
The is a command called LinetypeWithShapes.

What are LinetypeWithShapes

This command lets you make a new linetype, define the shape spacing, gap and baseline. Select the curves and/or text to define the shapes. Once you have a new linetype, assign that linetype to a curve to see it.
If the linetype needs to be updated, rerun the LinetypeWithShapes command and identify the name of the existing linetype with shape to be updated.

Why are LinetypeWithShapes

LinetypeWithShapes offers a way to define a repeatable text or shape displayed along a curve. This type of linetype is commonly used in CAD to show pipes, utilities, property lines, fencing and more.

Prior to the Rhino WIP, Rhino could not do this as a linetype and often text was simply arrayed along the curve. If the curve needed to be modified, any update on the array would need to be done manually.

The linetype makes modification to the curve simple and easy to maintain.
The display of the repeating pattern is automatically updated when the curve is changed or the linetype is updated.

How to Use LinetypeWithShapes

Select curves and text for linetype, Name your linetype, set a Spacing, customize a Gap, and use the origin or set a custom basepoint.

Shape Selection

Select curves and text
If BasePoint is not set, the Cplane Origin is used as the base point.

Name

Name: type in new or existing linetype name

Spacing

Select curves and text for linetype ( Name Spacing=10 Gap=BBox BasePoint ):
Spacing<10>
Enter the interval or distane between the repeating shapes.

Gap

Select curves and text for linetype ( Name Spacing=10 Gap=BBox BasePoint ): Gap
BBox
Uses the bounding box of the selected curves and text.
Manual
Pick 2 points to define gap size
None
There will be no gap or break in the linetype.

BasePoint

Select curves and text for linetype ( Name Spacing=10 Gap=BBox BasePoint ): BasePoint
Set Base Point: Pick a point to locate the curves and text with respect to.

Try it.

43 Likes

Thank you! I know this has a been a long requested feature, particularly from the autoCAD crew but helps all!

EDIT:

In the example with the breakline, does the “breakline shape” inherit the linetype properties that it is part of? or do the shapes in linetypes have their own linetype properties such as color, print width, etc?

Color and width should be inherited, but it’s so early on I haven’t even tried that out yet. I do know taper and dash pattern is currently not inherited as can be seen in the pac-man linetype

1 Like

Don’t forget to make this “curvepiping” friendly!

I’m thinking that would be useful also for rendering purpose such sewing on SRF.

1 Like

well done, wait a long time :+1:

1 Like

Hi @stevebaer , thank you for adding this feature.

However, there are some issues I have noticed. You can find them below.

1- The base curves I have marked with an arrow are visible.

2- The screenshot below shows the linetype created in AutoCAD. The transitions at the marked node points are connected to each other.

As you can see in the screenshot above, this is not the case in Rhino.

3- When I copy this linetype created in Rhino to AutoCAD, it loses its linetype properties.

4- Are there any other objects you would like to support besides curves and texts? (The first thing that comes to mind is hatches.)

1 Like

Added to the wishlist at

2 Likes

I see; it looks like ACAD stops drawing shapes at the ends if the shape doesn’t completely fit without running off the end of the curve. I’ve added this to the bug list at

1 Like

Yes, we want to try and support transferring this information back and forth with ACAD

2 Likes

I was thinking about hatches as well. Things do get pretty complicated if we wanted to support hatches will fills other than solid and I didn’t see any support for this in ACAD. Is there a certain type of shape that you want to make that would involve hatches?

1 Like

Just wondering how these curves will look like if “WTR” is replaced with “NO BUGS” :smiley:

What about applying these shapes in 3d curves that are not flat? Will there be a control on the angle of rotation, twist angle or total revolutions from start to end?

Currently the shapes align with the view’s CPlane

1 Like

Just solid hatch will be enough. I have not seen any other use case.

@stevebaer apart from already mentioned solid hatches (arrows!) and specifying an orientation:

Can the command behave like Flow? Speciying a base_pattern on a base_line and flowing the length of the base_line to the corresponding length on the target curve. This would be an welcome improvement.

I am aware, that the break-line example does not have the horizontal lines and the bbox - gap is chosen.

wip_flow.3dm (109.4 KB)

2 Likes

Hi hesro -

I’ve put that on the list as RH-88905 Linetype: Curve is Drawn where Shape Is

Hi Dan -

I’ve put that feature request on the list as RH-88906 Linetype: Deformable Shape
-wim

@wim

Thanks. Should not be too hard from a technical POV. Following example has two options.

  • Flow for shapes that can be deformed.
  • Orient for geometries that are more discrete, like hatched arrows

shpe_line.gh (18.5 KB)

Very nice. I would rather like to have better surface handling then new line types.

There are several developers working on Rhino; each with their own areas of expertise. There are developers working on surface handling tools and there are developers working on new linetype features.

3 Likes

Nice to hear

linetype scale will work on this right?