Curtain Panel "Width & Height"

Hi All,

I do have stupid question.

Is there a way to get Curtain panel height & width after profile modification as these parameters disappear after profile change?

Or there is other way to extract this information?

Thanks In advance.

Regards

@dkeinys ,

you can implement a readonly parameter in your panel families…

KR

Andreas

1 Like

Hi Draxl

Problem is all done as “System Panel” not actual families.

Im currently in process of getting panel widths and heights using BoundingBox and assign it to new project parameters not really like it but got no option as yet.

Regards

Have you tried to get the grids themselves and pull the distance between each?

@dkeinys ,

looks promising


KR
Andreas

2 Likes

Hi Drax,

Thanks for your time. I did tried this method before.

Problem is as soon you modify panel shape parameters “Width” & “Height” no longer present.

Currently im getting boundingbox than cuboid (Cuboid have values of Width Height Length")

Then i transpose values based on Panel orientation to swap betwean Width & length

Not the fastest way but sort of works still WIP as some panels got Widths & Lengths incorrect

Regards

@dkeinys ,

wait a moment :wink:

your panels get driven by the grids… so you have to move the grids…

or as an architect you have to “design” your grids in correlation to facade - furniture - light and static topics.

KR

Andreas

@Draxl_Andreas

Panels i talk about here is the ones around doors Windows and any other openings.

Regards

@dkeinys ,

is it an InPlacedFamiliy ?

Topology.Faces to get the faces of the panel.
List.Filter to filter out faces with edges that match the panel depth.
List.FirstItem to get one face of the two left.
Face.Verticies to get the vertexes of that face.
Vertex.PointGeometry to get the points.
Point.AsVector to convert the points to vectors.
List.MinimumItemByKey to get the shortest vector.
Vector.Add to remove the shortest vector from the others. All vectors are not at the origin.
Vector.Z and list.Maximum to get the largest Z component.
Trig to remove the Z component from each vector, taking the largest value to get the width.

Note that if your original face has a Z component to it’s normal then you will need to transform the vectors prior to taking the width or height.

1 Like

Hi @jacob.small

Can you please explain what do i input as “Keys” ?

This part im struggling to get together

List.MinimumItemByKey to get the shortest vector.
Vector.Add to remove the shortest vector from the others. All vectors are not at the origin.
Vector.Z and list.Maximum to get the largest Z component.
Trig to remove the Z component from each vector, taking the largest value to get the width.

Regards

Vector.Length should of the trick.