Splitting Polycurve but cannot offset "Curve.PointAtParameter"

Currently we are trying to offset room boundaries to create wall-to-wall lines (then will use these to create sections) but there are two options and both have problems.

Blurred out section is part of workflow which I think will not have solution so please scroll down unless you want more context-

[spoiler]First attempt was to offset room boundary curves but these will not offset “inwards” and move away from 0,0 therefore some go outside of the room. If we continue using this approach I think the aim will have to be somehow setting a vector direction to offset all curves towards centre point of room? But I have not found any curve offset options with vector.direction inputs.

Image of curves that are offset

Image of curves that are offset with room boundaries in blue


Second attempt was the solution to the inwards offset problem, by using a polycurve, The problem then is splitting this curve at corners of walls, therefore not allowing the continuation of taking each curve and extending it to meet wall width as when they are offset as polycurve the lines are too “short”

Image showing poycurve offset

Image showing polycurve offset with room boundaries

Showing points that are created when trying to read wall elements (room boundary) end points where the main problem is that it is at old position and not offset locations

To read points- used Room Boundaries (Clockwork package) node and plugged curves into “Curve.PointAtParameter” with intention to use "Curve.SplitByParameter"but offsetting points failed with “Offset Points by Polycurve and Distance” from Bakery package (screenshot below shows no change of points position and list falls from 654 to 16??)

So main question is - can we use the points offset by polycurve so that the points follow and can then be used to cut the line :slight_smile:

Ok, so after offsetting the polycurve and breaking it into its core parts, you want to project those lines back onto the original polycurve?

Try this:

I think that’s what you’re after anyway.

1 Like

Hi Jacob, thank you that did solve the offset of the points! :sparkles:

But to note for whoever is trying to do similar task, that for the purpose of offseting room boundaries this was not the solution. When the points are offset even if there is a joining wall on the other side of the room bounding wall the endpoint is moved to cut the curve at intersection meaning that the 1 wall will be drawn as 2 lines and therefore create 2 sections to elevate it.

Happy ending = the node to offset curves towards 1 point exists as “Springs.Curve.Offset” therefore we do not need to work with polycurves or split them and have offset the curves geometry of the room boundaries towards centre point of room using node “Room.Location” (built in)

Glad I could help.