Announcement

Collapse
No announcement yet.

Family parameters are not working as intended

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Family parameters are not working as intended

    I am creating a face-connected family using the generic face-mounted template with a parameter to change the elevation of the object from the designated face.

    img1.png

    As shown I have one parameter for the length (which I have locked currently to try and preserve the 7ft - 3 3/8in dimension) and a parameter for the elevation from the reference level. Unfortunately, when I change the elevation parameter it does not move the entire object down, instead, it extends the extrusion and causes an error to appear, stating that the constraints are not valid. (Shown Below)

    img2.png

    How can I make it move the 7ft - 3 3/8in block up and down without extending the extrusion itself?

    Thanks!

    EDIT: It seems to be moving the extrusion START which I want to lock at 0'-0". Is there a way to lock that value to not increase?
    andersmjohnson
    Junior Member
    Last edited by andersmjohnson; January 13, 2022, 04:25 AM.

    #2
    Remember the basic principles:
    Create a parametric wireframe from reference planes and lines first.
    Then you create the geometry and constrain it to the wireframe.
    In other words, parameters move the ref planes that move the geometry.

    Comment


      #3
      Originally posted by Nurlan View Post
      Remember the basic principles:
      Create a parametric wireframe from reference planes and lines first.
      Then you create the geometry and constrain it to the wireframe.
      In other words, parameters move the ref planes that move the geometry.
      Ok, this is helpful. I don't have a ton of fundamental knowledge of the parameters, mostly self taught. I'll give this a try and see how it pans out! Thank you.

      Comment


        #4
        Originally posted by andersmjohnson View Post
        ...mostly self taught.
        Me too. Have a good learning progress! )

        Comment


          #5
          Think of the as Bones, Muscles and Skin

          Bones = Ref Planes
          Muscles = Dimensions with Parameters
          Skin = 3D geometry

          The Muscles move the bones and the skin is basically just along for the ride


          Old post, but still relevant:
          https://revitoped.blogspot.com/2009/...scle-skin.html
          Company Website: www.deurloobm.nl
          Revit Ideas: Is this family Mirrored? | Approve warnings | Family Type parameter just those in the family

          Comment


            #6
            try making your family this way - it is way more robust.

            Create a new "generic adaptive" family.
            Create a point on the horizontal plane and then align the X and Y planes of the point to the X and Y planes of the family.
            Now your point is fixed in space it will always remain aligned to x,y,z of this family origin point.
            Select the point and make it an adaptive point - and also set it to "placement point" in the properties of that point.

            Now we make a second point.
            Before placing the point select the work-plane and in this case you want to select the horizontal plane of the point we just created.
            Depending on how you want to drive your geometry relative to your point you can use any of the reference planes of the placement point but in this case we want it to have a vertical offset from point 1.

            After placing your point keep in mind you need to align the X, and Y planes of that new point to point 1 also.
            If you have done this correctly, once you align it point 2 will be sitting on top of point 1.
            Now select point 2 - you want to perhaps name this point "top of column" for example.
            You can see in the Dimensions properties it is "driven by host" (in this case driven by point 1)
            And here you can also set an "offset" This is relative to the workplane of the host point (in this case the horizontal plane of point 1)
            Here I can just put a set value if I dont want it to be parameter driven, OR - I can go ahead and click on the little elipsis box to the right of "offset" and create a new parameter that will then drive this offset.
            In your case if you column size is fixed then I could just put 2meters (metric) in the offset value, but it would be more robust to make this a parameter so I have done that in the example file.


            Now when I modify the value in the new parameter I created, I can see that point 2 changes its position relative to point 1 only in the vertical plane.

            Ok so now we have our two points that will drive the Axis of the column.
            To create the Axis line of your column:
            Next select both points and then click on "spline through points"
            Now you will see a line connecting those two points.

            Next you will generate the extrusion. (you have just made the "bones and muscles" of your family, now we will skin it)
            Select the horizontal plane of point 1 as the work plane again.
            Sketch the shape of your beam around the axis lines and on the horizontal plane (see picture) Make sure this is one "continuous" line (so no mirroring etc you have to sketch full lines for each face of the extrusion)
            Then select the sketch, AND THEN select the line at the same time (use ctrl to select multiple items)
            Then you just go to "create form" and "create solid" and you have an extrusion constrained to the axis line

            By selecting the line (which is driven by the two points) your extrusion now follows the extents of that line.

            Now test that changes to your Column Height parameter make your extrusion react properly and that it remains constrained.

            This is a MUCH more robust way of constraining and way less prone to break with parameters. I can actually put a negative value for column height now and it will extrude below the horizontal plane without breaking the family.

            You can generate your entire family using this method, I have just done the column part but the rest you just need to make layout points for your geometry (bones) then the lines that link the points (muscles) then the skin (geometry to extrude)


            Attached Files
            Karalon10
            Forum Addict
            Last edited by Karalon10; January 20, 2022, 10:06 AM.

            Comment


              #7
              It changed by family life when I discovered setting your Work Plane will make everything you create "hosted" on that Work Plane.
              Then all you have to do is put a Dimension parameter on the Work Plane and EVERYTHING hosted on the Plane moves.
              No more rabbit holes of This dimensioned to that and that to the other thing.
              You'll need a lot less dimensions using Work Planes, too
              And name them so you know what's what
              Dave Plumb
              BWBR Architects; St Paul, MN

              CADsplaining: When a BIM rookie tells you how you should have done something.

              Comment


                #8
                Originally posted by Karalon10 View Post
                This is a MUCH more
                onerous way of achieving the simplest of geometric manipulations.

                Yes, adaptive components have a place* but in this scenario? they're a jackhammer for a pistachio...
                simple.png

                *mind, if you are ever going to go to this degree of overkill you might as well also use a loaded generic model "profile" (rather than sketch) and build a sweep through a start, centre and end point to give you future sweep-blend adaptabilty... etc.

                Comment


                  #9
                  Respectfully disagree, it took me literally less than 3 minutes to build that family.
                  The process I wrote out is long because I have to explain it in detail to someone that has never done it and provide images.

                  Comment

                  widgetinstance 211 (Related Topics) skipped due to lack of content & hide_module_if_empty option.
                  Working...
                  X