Revit Families - From Beginner To Pro | Mark Thompson | Skillshare

Playback Speed


  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x

Revit Families - From Beginner To Pro

teacher avatar Mark Thompson

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Lessons in This Class

54 Lessons (8h 32m)
    • 1. 1.1 - Introduction & Welcome

      3:27
    • 2. 1.2 - The Structure of Revit Families

      6:43
    • 3. 2.1 - The Revit Family Environment

      2:33
    • 4. 2.2 - Building The Structure

      3:12
    • 5. 2.3 - Making The Family Parametric

      3:52
    • 6. 2.4 - Create The Geometry

      9:20
    • 7. 2.5 - Using Within A Project

      2:38
    • 8. 3.1 - Geometry - Blends

      2:54
    • 9. 3.2 - Geometry - Revolves

      3:32
    • 10. 3.3 - Geometry - Sweeps

      4:36
    • 11. 3.4 - Geometry - Swept Blend

      2:46
    • 12. 3.5 - Geometry - Void Forms

      9:21
    • 13. 4.1 - Levels of Detail

      4:47
    • 14. 4.2 - Joining Geometry

      1:34
    • 15. 4.3 - Enabling Visibility

      2:42
    • 16. 4.4 - Subcategories

      3:39
    • 17. 4.5 -Adding Materials

      2:50
    • 18. 4.6 - Model Lines And Model Text

      5:56
    • 19. 4.7 - Embellishing With 2D

      6:37
    • 20. 4.8 - Shared Parameters & Schedules

      9:25
    • 21. 4.9 - Flip Controls

      2:52
    • 22. 4.10 - Type Catalogues

      2:37
    • 23. 5.1 - Hosting - Ceiling Based

      7:33
    • 24. 5.2 - Hosting - Floor Based

      9:58
    • 25. 5.3 - Hosting - Roof Based

      4:50
    • 26. 5.4 - Hosting - Wall Based

      7:44
    • 27. 5.5 - Hosting - Face Based

      6:54
    • 28. 5.6 - Hosting - Line Based

      7:06
    • 29. 5.7 - Hosting - Two Level Based

      8:41
    • 30. 5.8 - Profile Families

      4:37
    • 31. 5.9 - Curtain Panel Families

      9:19
    • 32. 6.1 - Formula - Basic Functions & Arithmetic

      6:05
    • 33. 6.2 - Formula - Angles & Triangles

      7:06
    • 34. 6.3 - Formula - Conditional Statements

      14:18
    • 35. 6.4 - Formula - With Text

      4:46
    • 36. 6.5 - Formula - Additional Numerical Functions

      9:52
    • 37. 7.1 - How And Why To Nest Families

      10:52
    • 38. 7.2 - Shared Families

      7:54
    • 39. 7.3 - Nested Profile Families

      8:22
    • 40. 7.4 - Parametric Arrays - Part 1

      16:25
    • 41. 7.5 - Parametric Arrays - Part 2

      40:46
    • 42. 8.1 - Detail Items

      13:44
    • 43. 8.2 - Tags

      11:43
    • 44. 9.1 - Doors

      46:45
    • 45. 9.2 - Windows

      29:55
    • 46. 10.1 - Revit Massing Environment

      1:56
    • 47. 10.2 - Create A Mass Family

      22:22
    • 48. 10.3 - Masses For Feasibility Studies

      12:28
    • 49. 10.4 - Pattern Based Family - Part 1

      15:46
    • 50. 10.5 - Adaptive Component - Part 1

      13:14
    • 51. 10.6 - Pattern Based Family - Part 2

      13:19
    • 52. 10.7 - Adaptive Component - Part 2

      30:15
    • 53. 11.1 - Summary and Thank You

      1:57
    • 54. BONUS - 2021 Updates

      8:01
  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels
  • Beg/Int level
  • Int/Adv level

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.

87

Students

--

Projects

About This Class

Learn how to create families using Autodesk® Revit® 2020 & 2021. If you are a complete beginner to an experienced user, this course will help you develop your skills and knowledge in order to create powerful Revit families.

Starting out with the basic concepts, we will go from creating basic 3D geometry to developing complex systems of formula to create dynamic and highly functional families.

You will no longer feel anxious when asked to create a Revit family from scratch or to edit an already existing family in your projects. This course will give you the confidence to make the necessary changes or additions to your Revit content.

This course is independent of Autodesk, Inc., and is not authorized by, endorsed by, sponsored by, affiliated with, or otherwise approved by Autodesk, Inc.

Autodesk, the Autodesk logo, Autodesk Revit are registered trademarks or trademarks of Autodesk, Inc., and/or its subsidiaries and/or affiliates in the USA and/or other countries. All other brand names, product names, or trademarks belong to their respective holders. Autodesk reserves the right to alter product and services offerings, and specifications and pricing at any time without notice, and is not responsible for typographical or graphical errors that may appear in this document. © 2020 Autodesk, Inc. All rights reserved.

Meet Your Teacher

Experienced Senior BIM (Building Information Modelling) Coordinator, currently working for an architectural practice in the United Kingdom.

Roles include the technical support, workflow development and software training to design team members.

See full profile

Class Ratings

Expectations Met?
  • Exceeded!
    0%
  • Yes
    0%
  • Somewhat
    0%
  • Not really
    0%
Reviews Archive

In October 2018, we updated our review system to improve the way we collect feedback. Below are the reviews written before that update.

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.

Transcripts

1. 1.1 - Introduction & Welcome: Hi there, and thank you for enrolling in this course. Revit Families from beginner to pro. You may have found at work or during your studies whilst using Revit that you've been asked to create a new family from scratch for a specific object. And upon opening, the family editor had been daunted by the task ahead, not knowing where to start. Or you may have been asked to edit an already existing family. And being overwhelmed by the complexity of that family, that you've been unable to understand its structure and therefore, how to amend it. Not to worry, this course is here to help. We will be going through the rabbit object hierarchy and family editor interface. Learning how to create basic 3D shapes in the family editor. Using parameters to add flexibility to the geometry on data in your families. Using formula to add automation. Controlling graphics to ensure visual consistency amongst your family's. Scheduling your family's inside a project, including additional non out of the box data. Creating 2D families to embellish and annotate the 3D geometry. Creating specific door and window families. And finally, looking at complex muscling and adaptive components. There are a couple of course requirements. You should have a working copy of Autodesk Revit 2020 or 2021. The later lectures in this course use Revit 2021. However, the functionality is exactly the same as 2020. You should also have a basic understanding of the interface and functionality of rabbit and the elements within a Revit project, such as how to model walls, floors, and ceilings, using I'm placing out of the box content and creating schedules. Finally, you should have an aptitude for learning and taking on new challenges. A moment to introduce myself. I am a senior BIM coordinator working for an architectural practice in the United Kingdom. My primary role is to support and train the architectural team on software packages and workflows. I have an architectural background having studied at university and have been using Revit for the past nine years on projects across all construction stages. A little bit of information about the course. We will be working with metric templates, and therefore dimensions will be in millimeters. The individual, family or project files associated with the lectures can be found as part of the downloadable resources for this introductory lecture. And any questions please ask in the Q&A forum. Right? Let's get started. 2. 1.2 - The Structure of Revit Families: In this lecture, we're going to discuss the structure of families within rabbits. All elements of rabbit are essentially part of a family and they are split at the highest level within Revit into categories. These are predefined in Revit and cannot be edited. Attitude overlooked. These categories encompass all of the 3D elements of a building, such as walls, doors, plumbing, fixtures, stairs, and also the 2D elements such as levels, grids, and views. You can see these categories by going to the Manage tab and selecting objects. Styles were here. It lists out the model objects and annotation objects, analytical model objects and important objects within so within categories as well. And you also have subcategories within them as well, which we'll discuss in a future lecture. Model elements in Revit all comprise of system on loadable families. System families, elements that make up the fabric of the building. If I go to this 3D view again, crazy. These would be elements such as walls, floors and ceilings. And you would expect to assemble these on a construction site. These families cannot be saved or loaded from outside the Revit project environment. However, they can be copied and pasted or transferred between projects. The basic structure cannot be edited by the user, IE, a wall elements will always be a vertical piece of geometry. Can't define layers to apply materials and structure along with other bespoke features to the wall category. Loadable families. I'll create it as part of an external family file or a dot RFA file. And these are loaded into projects. These are usually proprietary products that you would purchase from the manufacturer, such as doors, windows, furniture, boilers, plumbing fixtures, sanitary equipment, et cetera. On screen now is a common list of system categories and also loadable family categories. Loadable families can also comprise of 2D families that can be used to make up symbols such as level heads and grids had read heads and also detail components and tags. There's also another type of family, which is called an in-place family, which have similar functionality into local families. However, they are created and edited in the project's environment. They are typically used for unique components that need to relate directly to other pieces of geometry when the protons we will not be looking at in place families. So the duration of this course. To clearly visualize the hierarchy of categories and families. You can navigate to the Project Browser, which can be found under View. User Interface. And Project Browser. If you kinda see on your screen. If you go down to families under here and click on the plus sign to the left. Bring this out here a little bit. You'll see a list of categories here. Now may not show every single category that exist within Revit because there may be some families, especially loadable families, that there are no families that are in this project. And so the Cassegrain will not appear. So these are the categories. If I then click on doors. You can see these are the door families that are loaded into the model. If I select this door here, you'll see that this is the doors external single family, which relates to this doors extinguish external single-family here. If I click on the plus next to this family, and I have a list of elements here, and these are called type. A type is an object that has specific variables and parameters that you can place multiple instances of. And when you change the properties of the type, all instances of that type are updated to reflect the new Properties. I'll demonstrate with this window. I select this window here. You see a window of family studies. The category specified here. The family name is Windows single plane and the type is 1360 by 12 ten. If I go down to my Windows categories down here, you can expand to see that this is Windows single plane. And here are the list of types in my project. I click on the window again. If I click Edit Type, you can see that these are all the properties and values that apply to this type. To create a new type, you can click duplicate. And I'll create a new type called 1260 by 210, getting to V2 again, okay, I can change the width to 12, 16. Click OK. And see that made that window slightly smaller. I can then click on this window. This is still the 1360 time. Click on the drop-down. And you can see I can now select the new type that I've created. If I edit this type again. And just to demonstrate, I will change this to 960 temporarily and click apply. You'll see how both Windows change because I have edited the type properties. I'll change this back to 12 16 to align with the type name here. Okay? If I select one of these windows, you can see there are additional properties here. And these are the instance properties that are applicable only to this instance of this window. That includes the level and the sill height. So I could change the silhouette to 1200. And you can see it has only changed this window. I can also change the mark to say add a marker w1. And that w1 is now specific to this window. All the other windows maintain their original properties. It's important to understand the difference between type and instances, especially type an instance parameters, which will we will cover when looking at loadable families in future lectures. Now that you have an understanding of the structure and hierarchy of profit families, Let's go straight into creating our first family from scratch. I'll see you then. 3. 2.1 - The Revit Family Environment: Hi there and welcome back. Now that you're familiar with the rabbit hierarchy of elements, Let's get straight into making a Revit family. Will pick a basic Revit family that you might find in architectural projects. We're going to model a desk. So for, to create any family, you go to families here on the homepage and click New. And I can see here there are a lot of what are called family templates dot r of t files. We'll go through a number of these in future lectures. However, for the purposes of this section, we know that desk is a piece of Fincher. So we're going to go to the metric furniture. I'm going to click Open. So hey, we have the family interface. You've got the ribbon at the top which contains fewer tabs on the project environment. You have the Create top, which contains functionality to do with modelling 3D geometry. You have the Insert tab which allows you to in full Cats PDFs, images and also other families and groups. The annotate tab. And we can draw dimensions and 2D elements to embellish your family, which again we'll cover in future lectures. The View tab, which has information on Settings, on visibilities, drawing sections, and user interface and window management. The manage tab, which contains similar features to the project environment materials, Object Styles, shed promises and additional settings, et cetera, and the Add-ins you might have. And then finally the Modify tab. And here we also have the properties on the left, which will go through as this course develops and then the project browser here on the right. Obviously you can rearrange these as you see fit to suit your own sets up. You have a floor plan with a reference level. You have a seating plan which is the same reference level. You then have a 3D views, but you can also navigate through the 3D view here. And you've got an angle front-back, left and right elevations. The front elevation, for example, is looking in this screen down, up, Bucky looking from the top down, right is looking from the right and left is looking for the left. If we go into 3D, you can see that the view cube also has these descriptions so you can easily align a front 3D elevation with a front elevation in the projects. You can see that there's a reference level here. And this relates to the reference level. The family will then be placed on in the project once it's loaded on, you can see this reference plane here. And this reference plane here are the origin points of your family. Okay, That's the basic interface, fully family environment. Let's get straight into stock, create the skeleton around our family. 4. 2.2 - Building The Structure: Now you're familiar with a Revit family interface. Let's get straight into start creating our family. It's important to create robust and error-free families that you build at the structure and constraints prior to starting to create the three geometry that will represent your finished family. The primary way in which this is achieved is using what's called reference planes, which are 3D planes drawn perpendicular to the view that you would then host unlock geometry too. So we need to, we know that a desk kind of a basic width, depth and height constraint. And these are what, what we would like to be able to change later in the future. So we have these two reference planes in the center here, which are the center left, right on the center front back. Notice how both of them have the defines origin button takes. Now this means that this is the placement point in the family. So it's basically where your mouse clicks will represent this plot points in the family. So we know that our width, we would want to adjust and we'd want to adjust the equally along this center reference planes so that it moves equally left and right. However, this, we only want this front back reference plane to represent the wool, say that we are placing our desk against. So therefore, we don't know the depth to adjust in a downward direction. So because we've done that, we've done a bit of planning. We can go to create a reference plane. We know the Autodesk would be about 1200 millimeters wide, so we can put an offset of 600 just to keep our reference planes in our geometry kind of in scale to the size of the family that we're creating. I click on the center reference plane and because it's offset, the offset is 600. It'll draw my reference 0.600 and to the right. And I can, I can go again, Belfort, he's drawing in the same place. I can hit space and it will flip it. And then I can draw another reference plane, offset 600. And that will be my deaf reference plane. It's good practice to name your reference planes because so that when you come back to it in the future, you know what the reference planes relate to it and also another user wishes to edit your family. It's kind of clear what the purpose of each reference plane is. To do that, you can either click in here where it says Click to name, highlighted blue, or you can click in the name box here. So I've got a desk, front desk left. I can get a desk light and we can have, so these are the constraints for the width and the depth. However, we need to create one for the height. So I can go into my front elevation and I can create a, another reference plane horizontally. And I can give this a desk top name. I don't want to change the height in relation to the reference level to give near enough high. I can't, so I'm just gonna make this 900. And there we go. Notice that you can see these two reference planes that we've drawn that represent the desk left and the desk right because they are perpendicular to this front elevation. Noticed here. So this is the basics of tracing reference planes that will drive the structure going forwards. Now we'll look at creating perimeters that enable us to change the location of these reference planes to start create Tosca, adding more flexibility to our family. 5. 2.3 - Making The Family Parametric: Now that we've created a basic structure for our family, we can go and create the variables needed that will allow us to define the width, height, and depth of our desk in order to draw you a crate wall called premises. And to create premises, we would draw dimensions snapping to the reference planes that will define your variables. So the width here and the depth. Now I said in a previous lecture that we wanted the width to be centered amongst the central reference plane. So in order to do that, we'll create another dimension, selecting all three reference planes. And you can see there's a little AQ symbol appear in blue. If we click that. These dimensions tend to EQ, which symbolizes the equalized amongst the center. And we can prove that by selecting the right reference plane, clicking and dragging. And you can see how the left one also moves with it. So in order to add the parameter that will allow us to change the width, click on the dimension. Under the label drop-down. You can either click a pre-existing parameter or you can create a new one. We're going to create a family parameter. We will discuss shared parameters in future lectures. And we're just going to give it a name of width. We're going to keep it as a type. And we're going to group it under dimensions. The type of parameters predefined as a length type because it came from a dimension. So that's our width. So we can test that it's working and that it's flexing correctly by changing the value 1200. And that's working fine. And we can create a new parameter for depth. Okay? And just check this is working. So type in 650. You can also go to what's called your family types dialog box, which is this button here. So if you open this screen here, you can see that it's got these new premises that we've created, along with the kind of standard Revit built-in parameters. I can change the values in here as well. So I can change this to 1500. Click applying. And you can see I've changed OK, Changes to some a 100 click apply and you see how the depth changes. I'm going to change this to 650 and 1200. Click OK. Also going to go to my front elevation to put a dimension for my height. It's important that you select the reference plane that exists underneath the level, not the actual level itself. So just bear that in mind for when you're creating families. Again, we'll create prone to pay for height and k, and we'll just change that to 900. What we also need to do is create a reference plane that will define our desk thickness that worked on things. So I'm going to create a new reference plane underneath. And then going to create another dimension. And I'm going to assign this the work top thickness. It's important to be concise and clear with your consistent with your naming of premises. I personally use camelCase, but it's up to you. All I would just say is that it should be consistent, unclear to whoever's going to be using the editing the family in projects. Further down the line. Click okay. And if I change, it, changes to say a 100, you can see that this reference plane here and moves the cause this reference plane location is defined by this parameter. And therefore the only direction that this reference plane can move is downwards. So much into 250, that reference plane. Okay, so that's the basics of creating the premises that allow us to change the key variables in our family. In the next lecture, we'll go through the basic geometry creation methods and will actually then start to create a 3D geometry representing our family. 6. 2.4 - Create The Geometry: Now that we've got the structure and the associated parameters, we can now begin to create the 3D geometry to represent not Desk. In order to do that, you go to Create. And under the forms section, these are the five different methods in which you can create geometry. So I'm just going to briefly run through them now, but we'll go through them in a bit more detail in future lectures. So an extrusion is a simple 3D solid that uses a 2D shape and extrudes that puts a blend is a solid 3D shape that blends two objects aligned to profiles along its length. A revolve is a 3D shape that takes a 2D profile and revolves around the access point. And a sweep is geometry, the eyes crazy from a profile that's extruded along a particular path. And then a sweat blend is a combination of sweep and blend that merges two profiles together along any path. You've also got VOIP phones which create negative geometry and can be cut outs of solid geometry to create holes, for example. And these are formed by these same methods. So in order to carry on desk, we just know that the workshop is going to be simple rectangle so we can use the Extrusion tool. So in plan will click on extrusion and you enter the sketch mode. So you can create your geometry through a number of miners that gives you some pre-defined shapes, some rectangles, polygons, circles, ellipses, arcs, splines. And then you can also use the PICC lines tool. So what's important is that you lock the sketch lines to our reference planes. So you can do that in a number of methods. You could click on the rectangle, click on an intersection between two reference planes here. Click, go to the bottom, opposite corner, click again. And you see how these full padlocks a payment automatically, if you select those full padlocks, you're not locking this sketch line to the reference plane. If I just delete this other alternative is that you can use the PICC lines tool and you can pick the line, the reference plane. Click Lock. Alternative. You can click this lock button, which will, which will lock the sketch lines by default without having to click the padlock. And then you can then use the trim tool to trim. To create the shape. Our world or alternative, you could create a shape. The rectangle is bigger than the reference planes, and then for certainty you can use the align tool. Click on the reference plane, then click on the sketch line and then lock reference plane, plane, sketch line, lock. Either way, it doesn't really matter as long as you are sure that the sketch lines are associated and locks to the reference planes. It's also important that you create a closed loop rather than say, extending this line over here because then we cannot calculate the geometry. So if I tried to finish the sketch here, it says the lines intersect. And you need to create, and you need to close the geometry in order to read it knows that this, these four lines create a solid object. So once that's complete, I can click Finish edit mode. You can then see in planet got this solid geometry. If I go to 3D, I've got this solid geometry shape here. So I can check that the geometry is associated to the reference planes by changing the premises for width and depth, I'm changes to 5000. You can see how the geometry changes along with the reference planes. Again, change it back and I can check the depth. A 100. Yep, great. It's always good to change the dimensions as you are creating geometry so that you know that the family's functioning as you wish. And so I also need to make sure that the geometry is at the elevation for my tabletop. So I can go to my front. You can see how the geometry is just sitting on the reference level because that is the work plane that the floor plan is associated to. And I can see that we're playing level here. In order to associate this geometry to the workshop reference planes, I can simply click the geometry and click on this little drop-down arrow, drag it up. You can see how it highlights and bold blue the reference plane. And click and then click Lock, and then I can drink the loan up and click OK. Now I can change the height and again check that the geometry is locked. It looks good. And then the thickness change that to a 100. Yeah. We'll change it back to 50. Yep. I'm going to 3D. I'm going to change the scale just so that the lines on this thick 20 yeah. I can also go to my family types dialog box. Change the width of 5000. Yeah, and you can see how the geometry changes. Now I also need to add in some legs to this desk. So in order to do that, I'm just going to create some basic circular ones. However, they need to be offset from the edge of the desk. So in order to do that, I need to create some more reference planes. So reference plane inside here. My hand side here. And hence why they intersect is where I want my circular likes to be located. Another just going to select this so I can create another extrusion. But first I'm going to add some parameter into define the offset from the edge. So I know to do that I'll go to draw a dimension between the edge of the desk and desk legs. I can select all four of these dimensions at the same time. Create a new dimension or new premises because I have not previously defined one. I'm going to call it leg. Ok, and see how they will then match to become the same. I'm going to change that 100 and change the scale of this slightly to make it a bit easier to see. So then I'm going to create my extrusions for my legs. You can see that we already have a circle. So I'm going to create a circle. And I'm going to make these. I can type in the radius automatically 13 t here. Again. Alternatively, I can draw it too big. Click on the Sketch. I can change the value here. Create one mole. Now I can't have multiple sketches within the same extrusion because all rabbit will see is that this is a solid, this is a solid shape. This is all the shape, and this is a solid shape, and it will just create four of them. So once I've done that, I can click the Finish button. I can check that these are locked to the leg offset by changing this to a 150. Yep, that looks good. If whatever reason that geometry is not locked, the reference planes, you can click the circle. You can click on this center mark visible parameter in the properties. And you can see how you get a little cross m. You can then use the align tool to align by selecting each reference plane and the center mock, unlocking it, right? It's quite intuitive when it comes to certain geometries and sketches. So it will, it has done this automatically, but if you need to check, it's a good or needs or you see for some reason that it's not worked ITS, and this is a good tip to lock the geometry of circles. Yet. Again, just check that it's working. Great. Again, I need to change the height so I can go to front. So what I can do is I can either click and drag these up and lock them. Locked so that the alternative is I can use the undo. I can also use the align tool, select the reference plane, select the top of the geometry. You can see it's kinda highlighted in blue, then select knot and then lock them and achieves the same thing. So now if I change this to say a 100, see how the geometry will changes. And if I change the word total thickness, the next change get into 3D. Again because the types of work tough thickness, for example, 100, yeah. And then change the height to 750. Okay, there we go. So that's it. That's the basics of creating a desk using the Extrusion tool. And then on the next lecture we'll save this on load it into a project, and create different types with different sizes. 7. 2.5 - Using Within A Project: Okay, now we've finished our family. I'm ready to use it inside of Revit project. There's a couple more things we're going to do before loading it and using it in a project. The first thing will be to create a couple of family types. So to do that, we'll go to Family Types Data Box appear, create a new type. We'll call this 11200, width 5700, and depth by 740 millimeters. It's important to give clear and concise information and you'll type names so that the users in your project know what this retype refers to and its key characteristics. Click Okay, so this is already 1200 by 700 by 740, going to create a new one called 600 and width by 800 depth phi sub 14 millimeters. So I'll change the depth to a 100 height, 1600 width. Click Apply and you can see how the dimensions change. And there we go. The other thing I need to do is change is to save the family and give it a suitable name. As you can see, Revit just provides this family for the default name. So I'm just going to go File Save As family. And I've got myself a Families folder in here. I'm just going to call this desk rectangular because it's a desk. Click Save. So now you can see the name has changed him. So now I've got myself a Revit project, open the floor plan. So now to load this family into my project, I can click Load into project, or I can click Load into project and close, which will then close the family as well. So I'm just going to click the project. And you can see that it instantly wants to place a family. And you can see how the placement point is where we previously defined in terms of the origin on that upper edge of the desk then so I can click here and then we haven't. If I click on it, you see it goes translucent. You can see the legs. But in plan because the legs up beneath the table, top geometry, I can't see them. If you click on the family, I've got the family names or desk rectangular. And I've got this top hundred seven hundred seven forty type. Click on the drop-down and I can then change this to the other type. And you can see how it expands and changes the size. So that's it. That's how you create a basic Revit family and load it into a project. The next section we'll look at creating more complex geometry and developing this desk even further. I'll see you then. Thanks. 8. 3.1 - Geometry - Blends: Hi there and welcome back. I hope you had fun creating your first family and that you understand the fundamentals of family creation in Reddit. In this section, we're going to discuss the additional methods of creating both solid and void geometry that were mentioned in the previous section. So let's get started by creating a new family. I'm just going to create a generic model family as we are going to be using in this section just to explore the geometry creation. And we're not going to be modal modelling anything specific. So we look to extrusions to create our desk in the previous section. So now in this lecture we're going to look at blends, which is effectively just a 3D geometry created by merging two profile shapes together. So we click on blend here at the base of the blend so we can draw a shape. So I'm going to draw a rectangle. And then I'm going to click Edit top, which switches the sketch mode to the top. And I'm going to create another closed shape here. And then I can simply swap between the two. If I need to edit base, edit top, if I need to make any changes. And then if I click on the Finish Edit mode and go to 3D, see how this is created me my blend. I can change the height. I can constrain the top and bottom to any reference planes and dimensions that I may have made in this project, in this family. What a reference plane here. I can just click track the blend and lock it to them and it will move. There's also the functionality to change the add any rotation and change the vertices within the blend. So if I click on the Edit top, I can click edit vertices and depend OK and click either the controls and the top or controls on the base. And I can twist the vertices 90 degrees to the right. If you see that. So that adds a bit more of an interesting shape to the blend. And if I go back to Edit top, edit base and then edit vertices, I can either reset it and then I can twist it left. And then it rotates the blend in the opposite direction. So that allows me to have two different, the same shape but with a different sweeping between them. I'll just delete this. You can obviously have different shapes blending towards each two together. So if I create a new, a new blend, have a rectangle on the top and the base and then a circle on the top. Finish. I can then this is the resulting blend that I get from that. So you can use any, any profiles and any shapes to create the two together and read it will ultimately join them to create solid geometry. Okay, that was it for blends. Next we'll be looking at revolves. 9. 3.2 - Geometry - Revolves: In this lecture, we'll be looking at revolves, which effectively our 2D profiles rotated around an axis. So notice creates a revolve. I'm going to go into my front elevation. I'm going to select Revolve. Here I instead the sketch mode, so revolves are consists, consists of two main elements. You have the boundary or the profile to draw. And you have an axis line, which is used for rotation. So if I'm going to draw the axis, line, axis line first, one's going to draw it on the central reference plane. And then I'm going to use the boundary line tool to effective and draw the shape. I want to rotate. Somebody used the ellipse. Him. Finish the will, go into 3D and I'll change my view from hidden line to shaded so you can see the effects that XML and see here you get a revolve doughnut shape. You can change the amount of rotation. We're using the start and end angle. So I can change this to say 180. And it will only rotate a 180 degrees. I can offset that rotation by changing this to 90 and 270. And that will change the rotation. If I go to plan, you'll see how the angles change starts at 0 and see how it changes. I can also use the drug arrows to manually rotate as well, although as you'll see, it does not snap to reference planes. So it's like your angle, you would need to type in an exact number. Can change this back to 360. Go back to my front. You can have multiple sketches within a revolve. So I could have a square here as well. Then a polygon. The polygon I can change the number of sides so I can type if I wanted to, and I would get eight signs here. Finish the sketch, and then we have my updates. It revolve. One thing to notice that the profiles cannot cross the axis line. So if I click Edit revolt, going to delete these sketches, and I tried to draw a shape like this where this line crosses the axis. Try and finish and get a warning that says the profile and must not cross the axis of revolution. So bucket console, I can align the boundary line with the axis line and that's okay. And then you find out a bit more detail to this family. And again, it must be a closed loop. So for example, I'll get an error message here saying that lines kinda intersect. So I'm just delete this line here. Click Finish. And there we have my revolve. You can manually adjust the heights of the revolt of the geometry outside. However, it's always best to use the edit revolve function in an elevation. And then if you have any reference planes, all its constraints you wish to snap to use the Align and lock tool. So that's it for revolts. In the next session we'll be looking at sweeps. 10. 3.3 - Geometry - Sweeps: In this lecture, we'll be looking at sweeps, which is a 3D foam created by sweeping a 2D profile along a path. So it's a Create. This will go to the Create tab. Click sweep. Can see here we answered the sketch mode. There are two methods of creating paths for sweeps. You can either sketch the path which only, which sketches it in one plane, or you can use the pig past method, which allows you to pick the edges of geometry to create a more 3D. We'll look at these when it comes to creating Void Forms in a future lecture. For the time being, we're going to click on Sketch path, exceed. You click on what plane click sets. Because I'm in the floor plan for the reference level, it's going to automatically create it on the reference level. If I have additional reference planes that I will, that I can use that allow me to select them here. So I'm just going to keep it at reference level for the time being. So we enter the sketch path mode. And again, it has similar sketching features to the author geometry times. So I'm just going to create a few lines here. And then use the fit tool to just creates an edge. Let's say we have a simple path. So if I click Finish, now I need to edit the profile, but I'm going to use to sweep across along this path. If I have a profile family loaded, I can use that or I can load when. We'll discuss this in a future lecture on profiles and using them within sweeps. However, I can just edit the profile using the sketch mode. So if I click on Edit Profile, it will ask me to go to a left view because I need to draw it on this plane here and this plane that the red dot signifies where the profile will be drawn. So I clicked elevation left, and I can then just draw a simple shape and goes my 3D. So here you can imagine how this profile will be swept along this path. I click Finish. It finishes the profile. And then if I click Finish again, it finishes the sweep. So you can see how it's dropped that profile all the way along this path. Does it at right angles and also on the curves, him just going to delete this. I'm just going to create another one. Sweep, sketch the path. Now I'm going to create a complete circle, which allows you to do. And again, you can see how the profile is going to be created here. So I need to go into my left-hand view again. Sometimes if you can't edit the profile, it means that you need to select the actual profile element here and then you can edit it. So here I'm just going to create profile him. That'll be rotated around this closed sketch. Finish. And you can see how it's created. This sweep here. This, this shape could also be achieved using the revolve as well. However, what this then allows me to do, I can then segment the path by clicking on the little tick box next to true trajectory segmentation. I can then change the maximum segment angle. If I change this to 30 degrees, it will then segment my sweep into the number of segments defined by the angle. I can change this angle. The greater the angle, fewer segments. The last angle, the more seconds. So this allows you to create a more segmented past rather than having to use because and also allows you to change the number of sides for the polygon without having to rely on chain, on creating different sweeps with different numbers of polygons, as you might do with these inscribed and circumscribed polygons. So I was under the neat trick that allows you to do with sweeps, right? That covers sweeps. And in the next lecture we'll be covering swept blends. 11. 3.4 - Geometry - Swept Blend: The final method of geometry creation within the family editor is the sweat blend, which effectively creates a blend along a defined path. So in order to create this, we click Create and then sweat gland can see we edit. We go into this sketch mode again and they're all, we can add a sketchpad. We can pick a path. So if I sketch a path, note that you can only add and have one curve that sketch line, the sweat gland. As you can see, these two profiles define these dots and finished profile, I got into a 3D, can see here. Go back into my flow APA and tries to draw another line. You'll see that the two profiles remain on the initial sketch line that I drew. I can delete this sketch line on the profiles will transfer to this other line. But if I undo, you can see can only have one sketch line. Select this line and deletes it. So once I've finished my sketch, I can click Finish Edit Mode. I now have the option of selecting profile one, which you can see here, highlights in blue, or select Profile 2, and it highlights this one in blue. Alternatively, I can just select each one of these in the 3D view. So then I can edit profile of either sketch 10 sketch too. So if I select Edit Profile, see your sketches here. If I go into my plan, I can go into my left view and I can draw a small rectangle. Going to finish this sketch, go back into my 3D view. I can suck the other profile and profile and I'm going to draw this in a 3D view. You see how I automatically snaps to the vertices to make sketching 3D sign easier. And I'm going to slightly larger rectangle. Finish this sketch. Again, I cannot the vertices. So if I want to rotate the base profile, one vertices will face. I'm going to twist that left, right. And then I finish, oh, sweat gland and there I have it. I sweat a blend. Swept along a defined path. Right, that brings us to the end the lectures on creating solid forms, on the methods used to achieve. In the next lecture, we'll be looking at how to create Void Forms using the exact same modelling strategies. Will see you then. 12. 3.5 - Geometry - Void Forms: Okay, In the final lecture of this section, we'll be looking at creating void foams, which are effectively geometry that cut sounds off solid geometry. So to demonstrate this, I'm going to create a solid extrusion. Is going to draw a rectangle. Go to my 3D view. I'm going to extrude it outputs. So I will be creating Void Forms and cutting out to this solid geometry to demonstrate the functionality. So we'll begin by creating a solid extrusion. So I'm going to go to my right-hand elevation. And the Void Extrusion is simply an extruded 2D profile. Exactly the same as a solid geometry. So I can just create the sketch here, make sure that it's closed. I can finish edit mode. You can see it's courageous some geometry here. If I go to my 3D, I rotate around. You can see that it's cut out of the solid geometry automatically. I can go to my front elevation. I can select the geometry. I can then use the drag arrows to select Snap to geometry old reference planes if I have them in my project. So there we go. That's how to create a Void Extrusion. Next we'll look at a void blend. So I'll go into flow plan and avoid Forms. Void blend. I'm going to just create a simple rectangle. The bottom here, my base, and edit top. Create a circle, slightly offset. Finish that sketch, go into my 3D. You see it starts to create behave. Obviously, it's not very tall, so I'm just going to click and drag it up. Ultimately snap to the top of the geometry. And now you see how it's created the void blend and cuts out to the solid geometry here. Next I'm going to create a revolve. I'm going to create some little basin or bowl out to the top of this solid. So I'm going to go to my front elevation or Forms Void revolve. Again, remember with the Revolve I need to draw an axis line and then a boundary line. So I'm going to create an axis line down the center reference point here. And then I can draw a sketch for the boundary and I can show that it doesn't overlap. The axis line. Finish on Edit. And you can see again, if we go back to 3D, it's cut this bowl alcohol. The top here. I can click on their board revolving changes to 180 degrees. I can see it's changed in a 180 degrees. Next we'll look at void blend sweeps. So. Click on voids sweep. And this time because we have some 3D geometry, we can use the pic path method rather than the sketch path, which allows us to pick 3D edges. I'm going to click pic path. I'm going to select these three edges. And you can see how they highlights in blue as I hover over them, which means I can cite them. So I'm going to finish the edit mode. I'm going to go to my floor plan because I need to draw my sketch in. You. Cite my profile, edit my profile, and I'm just going to create a simple triangular cutouts and make it a bit bigger. And move it out that way. Go back to my 3D view. Click finish, and then finish again. And you can see how it's swept that profile along those three edges that I selected. I'll change this to a hidden line. So you can see how the geometry has changed. It has been cut out. Why that sweep is. I can select the sweep that if I wanted to, I could edit the sweep. I could pick path. I could actually delete this line if I wanted to. And the sweep is updated to only gotten these two edges. The final void foo and we can look up will be the void swept Blend. So if I just go to a front view, a void swept Blend, I'm going to sketch the path. Remember can only have one pass. I'm just going to create a, an option going through the center here. Finish edit mode. Because with 3D, select this profile and profile for a circle on the center. Finish that sketch so that the other profile, draw a polygon with five sides. Center. Finish that profile. And then finish the void, the blend. And you can see how it sweeps and cuts through the geometry. Like so. One thing to know is that if you've accidentally created a piece of geometry as a solid and you want it to be an extrusion. So let's say I'm going to go into my front elevation, change this to hidden lines. You can see the front elevation. If I wanted to create a void going through the center here. But I accidentally click on extrusion. And I select the sketch and I creates it. Change this to 1000, 2000. So we can say protruding. I'll go to 3D. Here. This, I realized that I've made out of solid geometry rather than void. I can change that by going into solid. Avoid click on the drop-down and clicking void. Have you'll see that hasn't ultimately cutoff. So the geometry. So notice there that I can click on Cut, select the solid geometry first, and then select the boys geometry. And you'll see that that has now suitably cut out this extrusion from the OH, so that's just a good note in case you've created the geometry using a solid, I want to easily swap it to a void. So that covers void geometry. One thing to note is that it's always worth trying to avoid using void geometry way you can. As an example, if I have an extrusion over him and I want to cut a hole out to the center. You should, you should, you should avoid using void films and instead edit the sketch of the extrusion because I can't do it in plan. So I can edit the extrusion. I can cut to haul out here. Because Revit knows that these two sketches go together to make solid between the two. So I can click finish. And that's my 3D agency. I was crazy. The void form here. So just be aware of and consider using void films as it does take more processing power within Revit to create the void geometry. Okay, that's it for this section. I hope you've now got a good understanding of created solid and void geometry. In the next section, we'll go on to look at how to add complexity to your family for use within projects. Thanks, I'll see you then. 13. 4.1 - Levels of Detail: Hi there and welcome back. In this section, we'll be covering features and functionality available to you to increase the complexity of your families for use in Revit Projects. This first lecture, we'll be looking at levels of detail. So within Revit, you should be aware that there are three levels of detail. Yeah, of course. You have medium and then you have fine. And this allows you to change the detail level depending on the scale drawing or output that you're producing. System families such as walls have pre-built definitions of what is visible and coarse, medium and fine. However, loadable families, such as doors, this is completely up to you. So let's take a look. I've created a new, more applicable desk to an office environment. We've got two legs create with two extrusions. We have the workshop. We have a partition created through a sweep. And I've also added a small indicative socket outlet here. So let's say that in I only wanted to see the work, the desktop and the legs. In course view. How would I do that? So this is achieved by selecting on the piece of geometry, or in this case multiple pieces of geometry. And then selecting on the visibility or Graphics Override button here, which can also be accessed up here. So here you can see that this geometry will be visible at coarse, medium and fine level because all three of these are ticked. So this is fine for these three elements or geometry because this is what I wanted to see. However, for the socket, I only want to be visible in fine view because it would be just too much details to show on a, say one to 50 or 100 to a 100 generator and plan. So I click on visibility settings. And I can change this to just untick course and untick medium. And then I can also this partition I also really want to be able to see in medium and find u. So I can click on partition. Partition, change the visibility settings to not visible at course. Before loading this into the project to visualize it, I can test it in the projects in the family environment. I can do that by selecting on this preview visibility down here. Or I can do preview visibility on the view then surrounds with this yellow box because I'm on the course view. This is showing me what I would see in the project at Course View, medium view, and then up find you. So this is, I've checked this now this is what I wanted to see. One of the additional thing to note is that I can actually stop there because this is indicative. I wouldn't want to necessarily see this in section or an elevation. So I can change the visibility to not show this piece of geometry in front or back elevations, which is equivalent to these for a buck elevations here or left and right. So I click Okay. So I'm happy with this course view are going to see the desk and the legs medium, the desks, the top legs and backboard. And then fine, I can see everything. So I can preview the visibility off. And note that the visibility off means that I can see everything in the family regardless of the detail level. So I'm going to load this into my project and then going to place it here. And you can see that because I'm on fine view. I can see everything. If I change this view to course, I can just see the top of the legs are underneath it, but I can't see them as the hidden. And then fine, I can see the blackboard and then a medium Maxi hour and any fine I can see the photo. Just going to click this and go to a 3D. 3d is in course. And I can change this for medium. And then to find, and you can see how the geometry updates to suit of Sci-Fi. Go back to my plan. And I copy these a number of times. I go back to my 3D. Can see that this applies to all instances of these families. So this is very powerful in terms of being able to segregate the level of detail that you're showing on all your drawings from your last said before one to a 100 generation plants where you just want to show it into a rectangle through to your one to 50 to 25 room setting out and also any 3D visualizations that you want to achieve. So it's definitely worth getting your head around this and being able to manage this. So as you add too much detail is not required, but you can also at the diesel where it is required. Okay, that's that for this lecture complete on visibility. 14. 4.2 - Joining Geometry: Let's say I wanted this family two pairs of the workshop and the legs were stricter. One single elements. Revit allows me to do that through the join function. So if you navigate to the Modify tab and select join can set the workshop and the leg, and then the other leg. And then this joint geometry here. And you see this makes it look as though it's one solid piece. So when I load it into a project, so this is something we haven't come across yet. So when a family already exists in our projects and you've edited it and load it back into the fortunate Revit will ask you, if you want to override the project family. If you select overwrite the existing version, it will overwrite the existing version of maintain any parameters that you've got the owl present in the project. However, if you override the existing version and this parameter values, any promises you've changed whilst most testing or flexing or changing the family and the family editor. These are the premises that will then be used and will override the ones in the project. So it's very calf need to be very careful when selecting the correct option depending on what you've been doing in the family editor. So I'm just going to click overwrite the existing version. And you can see in 3D now that these are pairs, are they all one solid joint piece? So that is the basis of joining. If you need to enjoin, you can select, you can and join the elements by clicking on the job and join, selecting and join. And you can enjoin the elements from each other. 15. 4.3 - Enabling Visibility: Sometimes you may wish to have an option to turn parts of a family on or off depending on whether an instance or type features as soon element or accessor. For example, let's take the partition. There may be some instances where the politician is not required, such as when the desk is up against the wall, for example. Therefore, we want to have the ability as a user to turn it on and off. In order to do that, you select the geometry. Next to it is visible parameter here. You can click this button which associates a family perimeter. Now it's very important to recognize this functionality because it applies to multiple different aspects. And this is the first time we've seen it, but we'll be coming back to it an awful lot. So click on this. This brings up this dialogue box that shows you any existing parameters that are compatible with the yes or no type, which is effectively on or off. There aren't any. So we'll create one will program called partition spill, not good. So we want this to be an instance parameter because we want it to be independent and unique to each instance of the family. So I'm going to create those instance and I'm going to group it on the construction and click. Okay. So now I've created that promises. I can now associate this piece of geometry to that parameter. So we then navigate to our family types. You'll see that this parameter noises, hey, now you know that it's an instance because it's got the word default after. And this means that this will be the default value when it's loaded into a project. So the default value when it's loaded into poetry, it will be on, if I untick it, the default value when it's loaded into part, it will be off. So if I turn it off and then go to the Revit previews visibility options, I can then turn it off and on. I'm going to keep it as default on for the time being. So I'm going to now load it into my project override. We're going to go to my 3D view. And I'm going to click on these two end desks here. And you see how this instance parameter appears here. It's not in the type. It's an instance specific. And if I untick it, it removes the partition. So that's the basics of 3D visibility and visit visibility parameters. And we'll go into more detail when we start to use formula to derive the values of these tick boxes? Yes, no parameters. 16. 4.4 - Subcategories: Right, that allows you to segregate different pieces of geometry within a family to different subcategories and older to assign different graphical appearances on materials within the Revit Projects environment. When you create geometry, it ultimately is assigned the category of the family in which he created. So therefore, in this case, furniture. However, you can add additional subcategories to apply to particular pieces of geometry. If we go to Manage Object Styles, this is the capsule green, and we can now create additional subcategories underneath it. So we're going to create one called legs. And then another one, cold work. Click. Okay. We can now assign this workshop element to the top subcategory. And we can select both these legs, biceps and clicking Control, selecting either one and assign those to the next. So we can now load this into our project and override. So in here, if we go to Manage Object Styles in the project, you can see that under furniture, we now have legs and worked on it. If we change, say the line color of the legs to be gray with a dash. You can see how this changes the graphical appearance. If I just go to hidden line, the graph compares to the legs. In this view here. Go back down furniture and I changed it. I changed the legs to block again, solid. And then I make the work top thicker. You can see makes the workshop thicker and the legs thinner. I can also add default materials to the subcategories as well by selecting the material in here. So I'm going to choose just cherry for example here. And the legs, I'm going to choose a metal metal deck. Example. Click Apply. And then if I go to my shaded view, you can see how the material is changed. Now what I've also done is I've also got another family here that has the same object styles as the desk that I've created. So this is where the power of subcategories comes in because it allows you to change the material on graphical appearance of multiple families without having to either add filters or create specific material parameters, which we'll cover in the next lecture. So if I just demonstrate again, Object Styles, furniture, change the material to the door panel. Click Apply, can see how the material changes for them and also allows me to, within the visibility graphics of the view, I can hide certain subcategories if I don't need them. So furniture, I can hide the legs. And you can see how it's hidden the length. The only thing that's really important to notice that the name of the object style in each family has to be the same. So if you have fica edit this family, and I go into Manage Object Styles, you'll see that this has legs on worked on it. They have to be typed in exactly the same in order for it to work. But that's the power of subcategories and using them to control project level, graphics and materials. 17. 4.5 -Adding Materials: We've seen how you can not subcategories to control the material and graphical appearance of common families in a project. However, you can also add material promises to specific pod, pieces of geometry in the family. So to do that, you go select the say to Lech family's. Under this material premises, you can either change the material in the project, in the family, but it means you can't then change it when you load it into the project. I'll sense if you can associate a family parameter, which allows you to then change it inside the project. So click on the button here. Again, you get the associate found perimeter. There are none available, so you create a new one so of credit and pull the leg material. Now the type level and it'll go into materials and finishes. And it's a material type of parameter because that's the only one that it can be. So click Okay, we can create a workshop parameter. And then we can create a politician perimeter material parameter. So we can load these into the project, right? And you can see now if I click on Edit Type, we have these three parameters. By category means that the material will be defined by the category or subcategory. Hence, why still showing as it is. However, we can now select for this type. We can pick a material that's different. So we can have a metal metal legs. You could have a just a plastic politician and then a softwood. Terrible. Click OK. And you can see how the material changes, whereas the family defined by the subcategory is still the same. And if we were to move this out here, change the type. Click on Edit type. Again, you'll see how these, because it's a different type, they have different, it's not been defined yet. So we can then go and define something completely separate for the legs, the partition, and then the top. And you go. So that's how so then override the materials of the geometry with specific values for those times. 18. 4.6 - Model Lines And Model Text: In this lecture, we're going to cover the model line on modeled text functionality under the Create Top. Model lines are effectively 3D lines that exist in 3D space, but do not have any solid geometry associated to them, so they will not show up in renders and you cannot assign a material primates to them. And model texts is 3D model texts that you can place within the project. So we'll start with modal lines. Let's say we wanted to add a circulation space in front of the desk so that when we're designing, we could allow for minimum space for circulation. To do that, we'll create a reference plane back here. Give it a dimension. We'll set it to 1200. And then we'll give a cold access certain depth. We can then do is create a 3D model lines that will denote this area. So we'll create three lines and you notice how they are placed on a plane. So we're going to change, make sure that this is set so the reference level, so they are located on the floor. And we're going to then use the PICC lines tool to pick the edge of the reference plane here. And this end one. And we're going to trim these and align the middle line to the edge. If we look at it in 3D, we've got these three lines here. However, we probably wouldn't want to have them as solid lines. What we can do is create a new subcategory under Manage Object Styles. And call this access. And we can set the overriding here. So we'll have as grey dashed. We can select these three lines. And we can change the subcategory to access them. And you can see how they are visible here. So there are visible in 3D and in plan, but we do not have any solid geometry, so you cannot select them on materials or anything to them. So when we load it into the project, they'll see that that appear here. In plan desk. You can see that there's our axis on here. And if should you wish to hide it on any particular views, you would just simply go to furniture and turn off the axis. So subcategory. So that's modal lines which are very useful for indicating small items such as cables or wires or any kind of zone that you wouldn't want to necessarily modelling 3D. Model text is text that you can place in the project. And they are pays in 3D. So here you can see it's incredibly thick. You can change the, change the value, so you change the font size. So let's make this quite small. We'll make it 50 mil. So that's quite small. And then you can change the height of it as an instance basis in the family. So I'm just going to make that will make that ten. So you can also edit the work plane. So let's have this as being placed on the desktop. What plane? And then we'll do is we'll go to plan and we will just align this. So you can use the align tool to the bottom left-hand corner of our desk. So this is all well and good. However, what we can do is associate the text value of the model text to an actual value that we can specify through a perimeter. So we can use the associate family perimeter tool. Again, there are some already existing built-in rivet premises that we can use or we can create our own. So hey, we can create one called desk number. And this will be an instance because it'll be unique to that desk. And we're going to keep it under the text grouping. Okay, So if we go to types, you can see that the desk number by default is modeled texts, we can change the default value to number two. Number one, by clicking on the value in here. And now you can see it's number 1. Again, we can add the visibility so it's only visible in plan, fine level of detail. And we can also give it the same material premise as what top. So now when we load this into the project and overwrite, you see because we're going to find you can now see the desk number. And if you click on the desk, you can change the desk number in here to say number to this destination them in the three, et cetera. And then you can see it in, in 3D. So you can often use change the scale of it so you can see. So you can often use model texts to denote more symbols and graphics on wall families and things like that. But this is just an example to show you how you can associate model text to a parameter that you can then define through a family. 19. 4.7 - Embellishing With 2D: Let's say that in plan, we wanted to denote the inside edge of these legs. If you look at the family and a project at the moment, when you hover over, you can see the outline of the legs below. However, you cannot see this indication in plan naturally. Therefore, we can do is add a 2D embellishment to this family to add in this information. So if we go to a floor plan, you'll see how under the annotate tab, we can now draw symbolic lines, detail components, detail groups, symbols, and masking regions will cover detail components and symbols in a future lecture. However, the time being we'll focus on symbolic lines, unmasking regions. So this annotation is view specific, which means that it will only be visible in a view that is looking in the same direction as the viewer to destroy it in. So in this case we are in plan. Therefore any annotation will only be visible in plan view. So we want to denote a line down this reference planes here to show the inside edge of the leg. So what we'll do is go to Annotate symbolic line. What I tend to do is just draw the line outside. So I know that it's that I'll then use the align tool to lock these edges here. And what we can do, of course, is crazy new subcategory for them if we wish. So we go to Manage Object Styles. We've already got one for legs. However, we could create a new category, four legs, hidden lines. Okay? And we'll make them gray and dashed. So we select these two lines. And we change this. So Category two legs hidden lines, and you'll see they update. I'm also going to set the visit, the visibility to only show in. Fine. So you see how the gone gray and straight hair that is because our view is currently set to course. If I were to set it to fine, they would appear as there were in the project. And then going to align these two lines to the side of the reference plane. And if you hover over, you can see that the two lines are here. So these are 2D lines that are only visible in this view. If I go to my 3D view, I can't see them. So the only visible in a plan view. So if I load into project and overwrite, you'll see that I now have these two lines visible here. And if I go to medium, obviously I can't see them. I forgot to find I can see them. So that is a way of adding 2D information to embellish the 3D flow. Particularly more fine levels of drawings on views. Alternatively, if I have some complex geometry, so let's say if we take the south elevation of my project where I put the desks in, you can see that the geometry for the legs is quite complex. You've got these two lines. And here we might want to simplify that to just show one solid shape for the legs. So what we can do is go back to our family, go to our front elevation and we can draw a masking region over the top to hide the legs. So we've got masking region. And then we would draw the lines. And because we have the subcategory legs, we'll use the legs subcategory to draw the lines that bound the masking region. So we use the PICC lines. I'm going to take a look and then tap to select a reference plane. I then need to do it twice because I need to have two sketches within the same masking region. So I'm going to tab and select. Again. It tells you that there are highlighted lines overlapping, but that's okay because I know I will eventually close them. Same thing for here. And then set those two. Will then go to the Modify tab to trim off the geometry. And then we have two sketches. Finish the sketch. I can now set the visibility to only show in course. And what I'll also do whilst I'm here is notice how in the project I could see the 3D model lines that denote the access. Then I'm just going to go back into my family and select these three lines. Change the visibility graphics so that they can only be seen in plan. And not any of the front, back, left and right elevations. So now I load this into the project. I ever write. I go to my south elevation. You can see those 3D lines and disappeared from plants. So that looks a lot better. And if I go to Course, you can see how the masking region has now hidden the actual leg geometry in elevation. So it looks a lot simpler for any drawings that are say, internal sections or room elevations that scales. So one to a 100, I change it to a medium. You can stop seed extra detail. So so that is how you use 2D d symbol, symbolic lines on detail, masking regions to add extra information on potentially mask geometry as you need it for different levels of detail. Again, like I said before, we'll cover detail components and symbols in future lectures. 20. 4.8 - Shared Parameters & Schedules: Now that I have my family and my two types, different sizes, I created a small basic office layout. And I want to be able to schedule and quantifying the number of desks in my office. So to do that, I can go to View schedules, scheduling quantities. I know it's furniture, so I can scroll down to select the furniture category. I'm going to call this desk schedule. Okay? So I'm going to add the fields, type and count so I can count the number. I'm going to go salting. I'm going to sort it by a type and a header and then add a blank line. When itemize every instance so it groups together. And then formatting count, I'm going to calculate totals. So if I expand this, I had this base, this gives me a schedule and a count of the number of desks in each of each type. However, I also want to add the dimensional information that we've creates it an added his premises as part of the schedule, not just as part of the type name. As you can see, in the type properties, we have depth, height, and width, which is what we want to schedule. However, when we go to our desk, schedule, go to all fields. You can see that we don't have any parameters that much the depth, width, or height variable. Now this is because these are family parameters and only editable and visible within the family itself, either the type level or the instance level. Therefore, in my family, I need to amend these premises in order to make them schedulable. So to do that, if I click on edit one of the premises, so we'll see how this is currently set up as a family premises, so it cannot appear in schedules or tags. However, there's an option in the nice to create what's called select what's called a shared parameter. And this is a premises that can be shared by multiple projects and families exported to ODBC and appear in schedules and tags. So this is what we want this parameter to be. So we click on Share premises. Now notice that the, we cannot type the name in there just because a shared promise a has to be created outside of the project or family environment and stored in a text file externally. So if I go to select, so I have a shared parameter file here. However, there's nothing, there's nothing in there and there's no parameters. If I go to edit. I've created one here. However, you may not have one. You may have a warning coming up that says kinda find shed parameter file. So what you can do is you can create one. And I'm going to say create one called my shape parameter file. I'm just going to save it on my desktop. So I'm going to click Save. I'm going to replace mine because this I've already created it as a place holder. Yes. So now you can see that we've got to shed premise a file path. We have a drop-down for primates groups, and then we have our list of premises that will appear down here. So I shared premises is a specific premise of that stored in the text file externally. And it has a global unique identifier, which is unique to that promises. So Revit knows that if two families have that same parameter, that is the same parameter and should be scheduled as the same perimeter and within the same column in a schedule for example. So in order to create one of these shared premises, we first have to create a group. So we're going to create this group and we're just going to call this dimensions because this is Related two-dimensional data. Okay? Now I can create a new shape parameter. So I'm going to click New, I'm going to type it has a width. We need to make sure the type of parameter is correct. So we know the type of routes is a length because it's it's dimensional. You can choose which type it is. And it's very important that you choose the correct one because you cannot change this type of parameter once you've created it and applied it to our projects. Well families, you have to you'd have to delete this premises or create a new one on reassign all the premises. So length is fun. I can also add a tooltip, which would have PE when I hover over this parameter. So I can click Edit tool tip and I can type in here. Width of the element. O option is useful to use these tooltips so that users know what the exact function of the parameters. So I can then click OK. You can see the premises now pays in here. So now I can add, I can close the Edit Shape premises dialog box. And now I can actually pick the shape parameter from V prime is a group of dimensions. So I unclick width and you can see how it updates the name width. The type of parameters is defined. And I can still change whether it's type or instance. And I can change the grouping so I'm going to keep it under dimensions. And okay, I'm not going to do the same with the depth and height, although I'll show you an alternative way of adding to the shape parameter file. So under Manage shed premises. So this will link to the same ship problems of file that you all that you read just edited. And you can see that we've, we've gone straight into the edit shape promises, dialogue books. So now I can create two more parameters is called depth. I'm going to edit the tool tip, depth of the object. And I can create any other one called height. So length, I'm going to call it height of the object. Okay? Okay. And then, okay. So now if I go back to my family types under create family types, I can click on the depth parameter, click Edit. I can then click shed permits a select and I can now select my depth shared premises. And notice how the tooltip description page here. If I click Okay and then I hover over the depth parameter, you can see how it says depth of objects below. And then I can do the same thing for the height shape parameter select height, okay? Okay. And again, height, you can see how it says height of the object underneath. Click Okay. So now when I load this back into the project and overwrite. And so you can see that a pays exactly the same. Obviously if I hover over the width, that now tells me that this is the width of the object and the height and the depth. If I go back to my schedule and I click on Fields, you'll notice I now have a depth or the height and a width perimeter. So I can add these to my schedule. I can maybe change the order so I'll put width, depth, and then height. And then I click Okay. And now you can see how these are now scheduled out individually. I could change the formatting if I want. I can change the width to show millimeters. For example. I can change that in here. So now what I, what that means is if fMRI create any more Families for my project, I can associate those same parameters to the equivalent dimensions so that when I load in my project, load them into my project. I can schedule them and they will all appear in this, in these appropriate columns along with each component. So that is effectively how to create share prominences on It's very important that you understand this concept because you'll often need to do this for a number of family times, doors, any kind of any kind of loadable component. And also you can use them as part of Project premises within the rabbits environments as well. You can access the shared parameters and the Revit environment. Occluding share parameters on it remembers the path that you save two. So that's it for shared premises. Next, we'll be looking at Flip controls. 21. 4.9 - Flip Controls: Revit family editor allows you to add flip controls to the family so that you can change the orientation of the family within the project. To do this, you go to Create tab and click on this control button here. So you can, there are four separate options. There is single vertical, double vertical, single horizontal, and double horizontal. Single vertical on single horizontal, effectively do the same thing and they rotate the element about a 180 degrees. The double vertical flips the family in the vertical direction. So about this central reference plane. And the double horizontal flips the family about the middle reference plane, left and right here. So if I add a single vertical flip arrow here and a single horizontal arrow here, you can see how they have appeared in the plan view of the part of the family. I can start to move into orientate them. I've done it with a 3D geometry here. Just an essay and a new, in a new family, just so you can clearly see how the functionality works. I just load this into the, into a blank project. Place it. And when I select the family, you can see how it has these flip arrows. Flip control arrows, highlights it in. So if I flip once you see how it's rotated it a 180 degrees, I flip it back on again. If I flip it using the horizontal is also rotates it by a 180 degrees. So this allows for easy flipping of the family about its placement point rather than having to use rotate. And if I flip it back, it'll rotate it back. I can delete these two. And then I will add the double horizontal and double vertical flips. Move these two. It will send it. And then load this family into the project and override. And if I use the double flip family, you can see how it's mirrored across the central axis here, across the horizontal axis here. And if I click, flip the instance, it's mirrored across the vertical reference plane and the family hand. So this allows for easy and quick changing the orientation of the family in the project. 22. 4.10 - Type Catalogues: As parts of your Revit library of families, you may have some families that have a number of different types of variables, such as this one here, I've added a few more types into this desk family. However, within your project, you may not necessarily need all of those types. So example, if I load this into a blank project, place the desk. You can see that I've got these five family types here. However, I only need one or two of them, say. And having an increased number of times seen increases the file size. And also what adds two additional information that users have to sift through in order to find the correct types, for example. So I'm just going to undo for it to load the family, going to go back to my family. So in order to manage this and only pick the certain types we want to use in our projects. We can create what's called type catalogs. So this is a text file that basically contains all the information related to each time. So to create that, we'll go to File Export family types. And I'm going to place it just on the desktop. And it has to have the same name as the family that you are editing. So I'm going to save this as a text file save. And then also going to save this family on the desktop as well as the two families have to be located in the same place. So now that's done. I can go to my project. I can go to insert Load Family and go to my desktop. I'll delete this backup file. I will select this desk rectangle office open. And you'll see we have this dialog box appears here, which shows me all the five types that I had built into my original family and all the associated parameters with that. I can choose to then only select two. So I'm going to 1200. And using control, I can also select the 8000 click. Okay. And then when I go to Architecture component to place the desk, you'll see I have a choice of just the two types that I have loaded in. So that is a way of having families in a library with multiple times, but then a way of reducing that size down to only the size of that you need in the project. 23. 5.1 - Hosting - Ceiling Based: In order to create a seating based family doc and load into this demonstration we'll project and go to File new family. I. Then scroll down to select generic model, ceiling based. Double-click. Now you'll see I into the family editor environment. And the default view it goes to is a seating plan. And that is because if I go to Mali front elevation, you'll see that here. I have a ceiling on here, I have the reference level. So you need to model this geometry as if it were to be placed in a real project. If I go to 3D, you'll see that I have a basic ceiling here. So I'm just going to create a very basic ceiling mounted speaker. So I'm going to go to my elevation. I'm going to create a revolve, create my axis first, and create my boundary lines. And I get very basic. Shape. Him over everyone line click Tab to make sure that there will be lines are closed. Can see they click Finish. I'm not going to save my family first. So File Save As family onto my desktop. I'm just going to call it Spica, ceiling mounted safe. I'm going to load it into my project. You'll see that the placement tool that comes out to, and I can now place this family on the ceiling. Note that I cannot place it on a wall or a flu or out in space, it must be on a C. Then I can also do this in a seating plan. So I can go to Level 0. So human, go to Architecture component and I can place here, go back to my 3D. And you can see they are hosted nicely here. How the, if this ceiling sketch, what to be deleted. So someone at a party, what's it? Deletes it by mistake. Oh, deliberately. If you right-click and then I delete it, you can see that the elements also deleted with it. So this is very important to consider when using seeding base families is that if you delete the ceiling, the elements themselves will also be deleted. Additionally, if I edit the sketch, so if I select ceiling and I edit the boundary, I get into my ceiling plan. And I move this boundary line. So the sketches now outside of these, or rather these two elements and not within the sketch with seating, I click finish the sketch. It disappeared from my seating plan view. However, when I go to my 3D, you'll see they how they have now defaulted to be hosted to the level at which the ceiling is located them. So again, this is just another thing to note is that they don't, they aren't deleted. But they are they do low themselves to the level at which they are associated. So if I were to edit the sketch for the bass ceiling, again, use the align tool. Click on Finish edit mode and they would The rehost it to here. I can also add voids to cut out to the ceiling. And then I can so if I edit this family, I can't go to a seating plan. I can create a void film. So Void Extrusion. Create a circle. Same size as the sitting speaker. I'm just going to make this very small just to start with, in terms of the extrusion, depth, finished up. Go to a front elevation. If I then cut the ceiling onto the solid. Explain this down. You'll see that 3D scale. If I temporarily hide the geometry. There's now a hole in the ceiling. Changes to shade it. So you can see there's now a hole in the ceiling. I'm good. It's a front. You see it is also cutting my speaker, which I don't want it to do. So I can go to cut, uncut, uncut, and I can send my revolve and then selecting the void and that will not cut out the void from the family. How the isolate the ceiling. It was so cold out the hole here. And then go to front. I can expand this upwards. And then I could also move my revolve. I load into project overwrite. And you can see that the ceiling now has a isolate the ceiling. So you now has a whole cutouts of it for the speaker. And the speaker has now been recessed into the CNS. However, now, if I edit this boundary and I just move the sketch in 3D so that it's now if I look him seating plan, it's now not over the to speak is here. And I click Finish. You'll notice that it cannot cut instances out of Type one ounce of its host. And what that means if I cancel that and go back to my 3D, finish again, it's going to want to delete these elements because they are not cutting out of the ceiling. So I have to, I have no choice but to delete instance. So these two have now been deleted. So that's just a careful note when it comes to seating based families and using void cuts to cut holes in the ceiling and the ceiling. That's it for seeing based families. Next, we'll be looking at flow-based families. 24. 5.2 - Hosting - Floor Based: To create a flow-based family. And we go to file new family. Scroll down to select metric generic model, flow-based. Click open. And you can see here we are in flow pond looking down. And if I select this geometry here, this is a flaw. If I go into 3D, you can see that is a flow scale. I'm just going to go into Manage Object Styles to change the line color to be black. So I'm going to create a very simple access panel. Will this family, however, because access panel we'd want to classify in the Revit project environment as a dual. This is obviously a generic model, so we need to change the category. And in order to do that, go to the Create tab. Then click on family category on parameters. And here you can see that it's generic model selected which matches with the family council agree Jared models here. However, I can select those and click OK. And it's actually now change the category of this family. And if I go to my family types, you can see that it's added in some of the default parameters, rather that built-in promises for this category. So I can now start creating some reference planes. And I can associate this parameter here, so the height. And I can associate this parameter here to the width. So now what I want to do is I want to close a void out of my floor first. So I'm going to go to create a reference plane. I'm going to create an offset inside him. Create this, I'm going to call this opening offset to make this 100. And I'm going to create to vote foams, bowed extrusions. One inside the sensor that will get all the way through the wall. The flow, sorry, elevation. So I can split this elevation. I can use this arrow to toggle down and I can snap unlock to the underside of the flow. And that means it will cut the entire. Floor all the way through, regardless of the thickness. It's my floor plan and I create another Void Extrusion. And this one, I need to create a parameter for the panel depth. I'm going to get reference plane. So dimension, reference plane. Make sure I select the reference plane on the floor. Create a tunnel. So I can now that slot mapped to then go to my 3D. It's not yet cuts out of the floor. So I need to do Cut family the floor and then cut the voids outs of the flow. Now I can create a simple extrusion for the panel. I'll use the PICC lines and lock functionality. And I'll go to my front view here. I'll move this down to that reference plane. And I will look that up. That's all the flow that the 3D can see. I have this solid geometry here. Now I'm ready to load this into my project. First, I'm just going to create a type. I'm going to get my family types. I'm going to just create a panel. Things will be 50 millimeters, the width will be 1200, and the height to be 1200. I'm going to create a new type called 1200. By 1200 millimeters. Okay? Okay. I'm going to save this family. I'm going to call it access panel, flow-based. Save. And now I'm going to load it into my project. And you can see how now I can place it on the floor. I can also do this in plan, flow, plan. A family. I can create similar and I can place another one. I click on my 3D, rotate underneath. You can see how asked cuts out the full weight from the flow. If I were to change the thickness of this flow by selecting the flow, duplicating the type on changing this type to say 900 millimeters. Going to the structure, change in thickness through 900. Can see how the void continues to cut through the floor because I snapped to the void to the floor. I'll change this flow back to 300. Now you'll notice because there is a voyage cutting the floor. If I delete the flow, it deletes the objects. Additionally, if I edit the boundary of the flow flow plan so that one of these Access Panels is not within the sketch of the flow. Go back to my 3D initial edit mode. You'll see how it cannot cut the instance size of its host. So therefore you have to delete it. Just to demonstrate if I added this family again and I actually delete the Void Forms outs of the phone, out of a family, loaded back into the project over, right? You can see that if I added the boundary again, the Access Panel actually still remains in the project, even though it's not on top of the floor, it's still remains on the, effectively on the level of the host. If I change the height of this flaw and say to 300 millimeters above the level. The Axis panel also moves. So unlike the ceiling families, where you change the sketch of the ceiling and the objects and the level. The even if the sketch is not encompassing the flow base element, the access panel will still move up and down the boundary. Align it buck. Another thing to note is if I go to Level 0, if you click on the family, you have an option for it moves with nearby elements. So this means that the element that we've moved when nearby parallel wall element is moved. So if I click that, select, that, select this will move. You'll see how the family moves as well. This one is just to do with roofs. So I'll just cancel out. And you say if I uncheck it and move the wall, the access panel stays where it is. This can also apply to seeing base elements as well. So you can click moves with nearby elements for the scene based elements. I would often avoid using it because sometimes the access panel, you May want to stay where it is in relation to what's below it, whereas the world above it may need to move. So again, avoid using it unless you necessarily have to because you are reliant on people knowing that this family is associated to the wall. And we tried to keep in practice as few things associated to each other as we can so we know we have complete control. Okay, In the next finally, we'll be looking at, we're looking at phase-space families, sorry, roof based families. 25. 5.3 - Hosting - Roof Based: To create a roof based family, we would go to File new family. And we put generic model roof based open. And you can see how if we go into a front view, we have the upper reference level on the low reference reference level. And these relate to the OPA unreferenced levels in the project. So I'm going to create a roof based seeding speaker. So I'm just going to create a revolve around the central axis line. And then I'm going to create a 100 lines running down here. And just a simple sketch then make this almost like a cable, so quite thin, 10 mil. And I should probably, this will slightly, slightly to move these up. Click Finish. And this is our scenes for your favorite, it's a 3D view. You can see how it's hanging from the roof hand phones to create some premises to control the height. I could say I'm going to create a reference plane dimension from the APA reference level. Premise cold, length. As an instance, permanent. Slips and revolve, edit the revolve. Use the align tool to align buttons, the reference plane. And I'm just going to make this again. Let's make this an instance premises. We have to set the default length to 500 millimeters. Okay? So I'm not going to save is finally going to call this ceiling roof Spica. Spica proof-based. I'm going to load it into my project. So now you can see that I cannot place it on a wall. So anyway that I can place it on a roof. See how it's pasted it placed on the roof here. And if I change the length to say 1000, increase them. However, what you will notice is that it is perpendicular to the face of the roof. So if I was to edit this roof and the footprint, change this angle to be say 45 degrees. And here's the sketch. It's actually changed to be hosted on to this face. Because of the geometry changes. Click on the roof, pick new. And again, you can see here, toast at that. And do that. However, we want this ceiling speaker to be always vertical, but doubtless of angled the roof. So I can select this. Speak ahead, go back to Edit Family. And now there's a little Parameter attribute here called always vertical, which means that the family will always be vertical. And when it's loaded into projects, I can click on tick. The projects overwrite. And you can see now, regardless of the angle, this will always be a vertical family. So if I change the delete this first, edit the footprint of the roof, change the angle to match this one which was 30 degrees. Can change it in here. Octet shot component. I need to see if I place it on either of these routes. It will always be. That's cool. So that is how to create roof based families. And in the next lecture, we will discuss creating rule-based families. 26. 5.4 - Hosting - Wall Based: To create a world based family, you simply go to File new family. Scroll down to generic model, role-based, open. So this is the placement side. So we want to model on the placement side here, so on the top here. And for this, I'm going to model a wall-mounted television. I'm going to change the cat's agree to electric co equipment, electrical fixtures. And then I'm going to go to placement side. And I'm going to start modelling tools. The bottom, I'm going to just simply model some reference planes to create some dimensions. Just not to the level here as there is no, there is no reference plane. Some dimensions. To create a parameter. Language creates a reference plane. Pull the depth. Now here I can, there is a reference plane that I can select. I can see it highlighted in green there. So when I click top, I can select that reference plane that, and that will always represent the edge off the cold. Depth 75. My placement side. I can then easily create an extrusion. Use the PICC lines tool. Trim the sketch, finish the sketch mode, and expand the geometry route to look out to reference plane and then to this edge of the wall here. So there we go. So here is the wool, and then here is the TV. So I'm not going to save this as TV rule-based. Save. And I'm going to load into my project. And you can see how you can place it on either of these rules on either side. So I'm going to place it here. I can see how the elevation, the elevation from the set, from the level. So if I said the innovation to 0, it goes down to 0. If I move the Loa, constraints of the wool up using the drug to both the wool. This is just telling me about these floor and walls and no longer joins. I'm going to enjoin. The TV family is still hosted on to the wall. If I delete the wall, the families also deletes it. So I'm going to just undo those moves so I can set the elevation to 500. However, one thing to note, if you add additional geometry underneath the family, then the entire family will move up. Let's demonstrate this. So I'm going to edit the family. To go to the placement side. I'm actually going to create a reference plane underneath. And then I'm just going to create another piece of geometry underneath him to signify a sandboxing finished. Click and drag to lock it to the same constraints. Today we have a sound bar underneath. If I go to load into project, right, you'll see how the entire component has moved up. So if I just quickly undo and then redo, you see how the entire element that has moved up. So what this means is that if you edit the family to change an odd any geometry underneath the original family, the entire family will move up. So this means that there's TV element here is no longer associated heights that it was before. So you would have to move the ball down by the amount of geometry that's been in underneath. So this is just a point to note. If you edit will base families, you'll need to then in the project, if required, movable families down. This is the points to note. You can create some voice in walls as well. So I could create a void form as an extrusion to pick these edges here. And then I'm just going to pick the central onto the wall here. And then the reference plane. And the trim. Good to go to placement side and drag the void. To that. As my default 3D. I need to cut the void out to the wall. So I'm going to go cut like so. And if I load it to my project and overwrite will up and joined the floor and wall. You'll see that there's now I cut in the wool to the, halfway into the depth and do that. And again, if I now move this wall back because there is a void, the instance of V TV is now not cutting out to the wall and therefore has to be deleted. So again, similar principles to the ceiling and the floor objects when they are using the voids. So that's it for the major host based templates. We're now going to look at a more flexible method of hosting families on different surfaces and objects. So I'll see you then. 27. 5.5 - Hosting - Face Based: Let's say I actually wanted to host my TV on to this new coats and will that I've drawn, which is a penalize finished for the interior of my room. If I get to pick new host, I can only pick the wall behind it or not the current panels that it sits on. This is because this family, as from the previous lecture, was only created as a rule-based components. To create a more flexible method of hosting families. You can create the geometry and assign it to a any face. So in order to do that, we can go to File New Family. And we can then create, select generic model phase-based, click open. So when I select this geometry here, and in 3D, this is just a generic face. It is not a floor, a ceiling, or a wall or anything. So this is just representative of the face that you will be drawing it's against. And also notice how it is horizontal. So what you have to make sure when you're modelling is that you're much in inflow plan that you are modelling in an elevational view of the face you're placing it on. So for example, if we want to create a space-based television, we can go to create. We will create our reference planes. Principle behind and a premise. So for the width, It's my front elevation. Front is effectively looking from underneath the television. If we place on a wall. I'm going to create a reference plane just to define the depth. And again, I'm going to select the reference plane. You can see in the bottom left by cycling three top to host, to host this dimensional depth. And that will make them 50 millimeters. So this spending 600 extrusion to then create my in my front elevation going to align and lock the geometry to the depth reference plane. So here we have a simple face based. Component, I'm going to save this TV face based Save. And I'm going to load it into my project. And if I go to my 3D view, you can now see I can place it on any face. So I can place it on a cut and panel here. I can place it on the floor. Can place it on the wall. Like a place it on the ceiling here, on the underside of the ceiling. I can also place it on the roof and also save the underside of the roof. So it's very flexible in terms of how you can place these families. And we'll also see how you can use them to create angles, parameters, and associate them to reference lines. In future lectures. If I delete, say this wall and the ceiling, we'll see you at the families remain where they would have if I click on Edit work plane, you can see that the work plane they are associated to two is now not associated. If I undo and I click on the element here and click Edit work plane, it's told me this is the compound ceiling of this type that is hosted two. They can also be hosted two reference planes. So if I go to plan and in the project environment, if I go to architecture reference plane, and I draw a reference plane here, and I select my phase-based television. I create similar. It's automatically selected to place on boats called face. I can snap to this reference plane. Not once. You can see how when I select it, there is a little flip. Workplace toggle, which I can flip on. It swaps it to the side of the reference plane. Now when I use this reference plane, changes, especially playing them move it, it moves along with it. We often use this strategy if we need to have families that are hosted on, say, elements in linked models, we would never host the element on eighth, say for instance, for instance a linked wall, we would always create a reference plane and then host the elements on that in our model. As an architect so that we have complete control over the position and hosting of this family. Just a final word of caution on all of these hosted families. Often in practice, we will try to avoid using hosted families where possible because it relies on other geometry. And if that geometry is edited or deleted or removed, as you see going through these lectures, often that can have undesired consequences. Any elements hosted on them. So often, we will try to avoid using hosted families. However, this lecture is, I've shown the different methods and strategies used to host certain elements. And the next few chapters, we're going to discuss a few other different types of family templates. So I'll see you then. 28. 5.6 - Hosting - Line Based: In this lecture, we're going to have a look at line-based families. These families do not have an insertion point, but a starting and an end point located along the length of the reference line. The geometry will then be creates it along the length of the family. Let's have a look at how they work. So I'm going to go to new families, go to create a new generic model line-based family. Sent open. So Haven plan, you see we have a two reference planes with a reference line on the, connecting the two. And then a length parameter that has been defined by default that we can't change or we can't delete. So this point of the reference line is the stop point, and this is the endpoints of your family and the geometry is then drawn between. So we can use these kinds of template for say, a workshop along a wall in a room, for example. So let's create one of these now. So I'm going to go to a, my left elevation. So this will be the wall here. And I'm going to create my geometry to the right of that. So I'm going to create some reference planes. And I'm also going to create a shelf. And I'm also going to add some thickness to my What's up. So I'm going to ask them dimensions. So this will be overall height. So this will be the height. I'm going to set to 900. Then create a couple of premises for the thickness. Wouldn't make this 50 millimeters. And then I'm going to create the premise for the shelf height. Okay? And I'm also going to create a dimension for the thickness, uh, be fixing on the dock. So now I'm going to draw a sweep along the reference line. So I'm going to go to Create sweep. I'm going to sketch the path. We're just going to draw one single line. Here. Going to use the align tool to select the end reference plane and align to the end of the sketch line and the starting reference plane to these dots off the sketch layer here. And then align the entire line with the back of what will be my cabinet, my workshop. Finish the sketch. Go into my edit, my profile. And I'm just going to use the PICC lines unlock to create my sketch. And then one on the bottom. Use the trim tool to create the final shape. We've finished that. And if I change my shelf height to say 550 hundredths. So now if I go into my 3D, I have my geometry. If I go into my plan, if I select the length parameter and go to 1000, 500, the geometry increases with it. Not going to save my family. Just don't call it line-based safe. And I'm going to load it into a project that I've opened up. And you say I cannot replace it on a face or can place on a work plane. I'm going to select work plane. I'm going to make sure it's level 0. And you say nothing appears and ghosted when I hover over. But instead, I can select to start. I can select to end. And this has now created a line-based family following that, using that sweep to create the geometry. So I can click in 3D, just hide the levels. And you can see how the geometry follows the length of the line. I can move the line to whichever arrow, an angle that I needed. So the benefit of using line-based is that you can create multiple arrays very quickly without having to create, place different instances on manually type in a length parameter. You cannot change the length here. You can only do it by clicking and dragging, but you can select this temporary dimension here to type in 5000. And it will adjust the line like so. You can use modify a line tool. So if I want to align this workshop to here, and it will stretch to suit. And if I wanted to draw to as a right-angle to each other, I could draw another one. Great similar. From here. Go into my 3D view. Select, join. And I can join the two together to create a nice right-angled arrangement in the room if I need. So that's a summary of line-based components. 29. 5.7 - Hosting - Two Level Based: Sometimes in r7, you may want to model things that are not just based on one level but based on two levels. Let's take this cool layout. For example. If I go to a section, I may want to create a lift family that spans from the ground floor level 0 all the way up to the third floor and we'll adjust to changes in the levels. So how do we go about doing that? So we'll go to File new family. And we then pick the generic model to level based family template. Click open. So you can see you have in the elevation, you have an upper reference level and you have a lower reference level. What this allows you to do is reference geometry to the low reference level and the upper reference level. So let's make a basic lift shaft. When it gets my low reference level of plan. I'm going to create some reference planes, create some depth. Depth. What I can then do is go to my front elevation and I can actually create a reference plane above the APA reference level. And then I can create a dimension associated to the APA reference level. And I will give this a parameter called lift overrun shaft over and to keep consistent. So I can set this to say 3000 millimeters in this upper reference level. So now what I can do is create a 3D void or shape to represent the shaft that I'm going for the lift. So I creates a extrusion, create a rectangle. Only three catalogs of the page. So I'm just going to click on the align tool. Click on the reference plane and the sketch line. Confirm that will flex the model just to check. So middle 1200, that'll make this 1000. Yeah, all good. Can go to my front elevation and I can now select the geometry. I'm crazy. And I can drag it all the way up. To make this top reference plane here. And I'm going to give this reference plane name called lift shaft. So there we have it in 3D. Obviously this is a solid object, so we want to give it a bit of materiality so I can go to manage object styles. I can create a new subcategory called shaft. Okay? And I can change the line color to gray and dashed. Sign the geometry to the subcategory lift shaft. And then I can go to my Object Styles. Creates a material. And I'll just duplicate the default material type and just create one called lift shaft, which is 6% transparent. And say, There we go. If I go to a shaded view, you can see that in my plan I'm also going to add to symbolic lines. Well the lift shaft and projection. So I can see these in plan. So now I'm going to save this family level based load into my project. And I can just place it in the center here. And once I placed in, you can see that it has a base level 2 level 0 and then a top level 2, level 1. So I can say, if I go to say my section, you can see here that it has so to level 1 and the distance between the top of the shaft and the level is 3000 millimeters, which if I select my family, click Edit type is the shaft over and recognizing the top level, two, level three. You can see how a family to suit. I can then change the low. If I change level 3. Can see how the shaft also extends up with the level plan. I can click on at a type and I can create a new type. Actually need to check the dimensions of the shaft first. Measure. So 2300, one by 1800 di meaning two thousand, three hundred and ten hundred, eight hundred, three hundred and ten thousand. And you go. So I can now move this to enhance. And I can copy this shaft alone. If I go back to my section. And if this shaft will say only go up to level two, I can change this to level two. And I'll go, and if I go into 3D, you can see how the shafts temporarily hide this element. You can see how the shafts span where we defined. One thing to note is that if all of these elements are grouped, so if I create a group from all of these elements and call it click. Okay. When I edit the group now and I select the two level based object, lift shaft, I cannot change the top level or the base level, which means that if this lift I'd accidentally modeled it as go into level 2, I would need to either remove it or just delete it out of the group. I'll have to delete it. Go into plan. Creates a new component. Set the level two, level three. Because that's my 3D. Click on the group, edit group, and at this shaft to my group now. So that's just one downfall of two level based families. And that's applicable to structural columns, for example as well. So just be aware of how you're doing and using these two level based families in your groups. 30. 5.8 - Profile Families: In this lecture, we're going to talk about profile family's. Profile families are 2D families that are usually a closed loop sketch that can be loaded into projects or families. And we used to apply to certain building elements. So just curtain wall millions or geometry types such as sweeps. Going back to our line-based worked up example, remember how we had some sweep geometry in here. And if we select it on the profile, we edited the profile via sketch lines and assign them to certain reference planes. However, there's also the option of selecting a profile family. I'm just going to come out to this sweet mode. And for this family, just to note, I have deleted all the reference planes. And I held also deleted the premises. So to create a profile family who go to file new family. Scroll down symmetric, you'll see there are metric profile. You'll see here there are a number of other profile types that you can use depending on the type of objects that you are drawing. So for example, you could choose millions or Rails or reveals standards. However, in this case we're just going to create a generic profile. So if I'm you see we have a a view that looks similar to any other family. I will notice that there are no sections and elevations. And then do the Create tab. The options available are limited. You cannot create geometry, for example, you could create lines or detail components. We'll go through detail components and using an profiles in a future lecture. You can also use detail groups. So we can create our profile using the line function. Now I'm not going to set up any dimensions or reference planes. In this example, we can go through this nesting of profile families into other families in more detail in a future lecture. But for now, I'm just going to create a desktop using just the draw tool. So I could create 64080. I'm gonna give it back to my workbench. It's going to check the height. I've 60. So I'm going to select all of these and move them up to make it 900. So I can type into the formula equals 900 minus 560. And that will move it by each certain amount that I need to get to 900. And there we are. And I can create some more lines for shelf. Underneath. Delete this dimension. So here is a simple profile family. Note that the sketches have to be closed loops although they will not work. So I'm going to save this family, which call it Profile. Work top, safe, into load on clothes, into my What's up line-based family. Now, when I go to my sweep and I edit sweep, I set the profile. Because the profile family in my project, I can click on this drop-down. I can select profile worked on. And you can see here how it is now created this profile. I can flip the profile if I need to. And then simply click Finish. And there we go. Go to 3D and the geometry has updated to suit this profile. To change it. I have to. I cannot change it within the sketch sweep environment. So I have to edit it through the family. So I'll go to families profiles. I would right-click on the profile, worked up. I would edit. And then let's say I delete this shelf. Select, right-click, Delete. I can then load into projects and close. I won't say the changes over the existing version. And you get the Cp geometry updating. So that is the basics or profile families and how to load them and use them in other families and geometry types. 31. 5.9 - Curtain Panel Families: The final template we'll be looking at in this section is the current pound template. Current panels are hosted only within curtain walls. Here we have a curtain wall that I've drawn in a new project. Click Edit type. You see how I have defined the curtain panel. I was just a system panel. And I will define a million times as well. Down here. If I hover over the edge of a cone panel and hit Tab until I can select it. Couldn't panel. You see that this is a system panel type. System panels are system families that are very basic, almost placeholders for you to use as part of a curtain wall. If I click Edit type, they have very, very basic functionality such as offset from the center line and plan and I thickness and also a material. However, you may want to use your own specific families with further design features and load them and use them in this curtain wall. So to do that, we need to create a loadable curtain wall family. To do that, we go to file new family. We will select Metric curtain wall panel. And you'll see in floor plan. And I expand this here, you have the two central reference planes, as you would expect. Then we also have this left-hand reference plane and this right-hand reference plane here. And these referred to the vertical grids within a curtain wall. I'll go to the exterior. You see we have a top reference plane here and also a Boston reference plane here. These refer to the horizontal grids in the cotton wool. So that's what we need to associate all our geometry to these full reference planes in order that they move appropriately with the grids in the cotton wool. So I'm going to start off just by creating some reference planes, full A-frame. Going to create for reference planes. Then go into dimension them and then assign a parameter to them. Call this frame width. Okay? And what I'm also going to do is I'm also going to create a reference plane for an offset from the exterior. And then a depth. I'm going to draw dimension between him and between him. She's a scale that I'll call this crazy new permits offset. Okay. And then creates a problem to heat and cold depths. So I can now create my frame. So I'm just going to go back to my exterior view. Creates a frame using an extrusion. Extrusion. And I'm going to create using the rectangle method to the full reference planes and then to create the interface, look to these whole reference planes. God's plan. And now I can associate these actually the geometry to the two reference planes here defining the depth. So now what I also want to do is I want to place a thinner, solid panel inside in the center. So to do that, I can create a new reference plane. Inside here. I can then create a quality dimension in here. And you can see that this is now centered and always will have been, always will send to this reference plane. So if I change the depth to a 100 and this reference plane now is in the center. Now I can create two more reference planes. I'll just make this a bit thicker just to demonstrate. I can now create two reference planes. Either side of the center one. Or just select this one. Hit the mirror pic axis. I'm going to select that center reference plane to mirror it below. And then I can use the Align Dimension again to create another dimension and then create a dimension to define the panel, fitness center panel things. Now we can just draw this as an extrusion implants on which creates the PICC lines tool look. And so that's these reference planes. We're going to trim to create my sketch. And then I'm just going to drag this up to align to that reference plan and track the bottom-up to align with our there we go. So if I have, this is my basic panel here. What I can now do is assign some material promises so I can select them the frame Sina material premises, so frame 0. Okay? And then hover over the edge of a tunnel. Hit Tab until I select the panel. And to be okay. Okay. Now this is my basic couldn't will panel a family. So I can save this desktop. Just saying panel with frame. Save load into my project. Because I, I kinda replace it because it can only exist within side coding rules. So just expand this out, come back to my 3D view. So now I can go to Edit type for this code and we'll type at a time it under the code and panel, I can change this cut and tunneled to be compiled with framed family that I've just loaded in. I can apply. And click OK. Hey, you see is now changed my family to the panel that I have specified here. Obviously, I need to go into plan on to adjust some of the properties because as you can see, the panel is sitting way outside the Mullins. So I can click Edit Type. I can change the offset to 0. Click applying. So it's now offset aligned to the interface of the code and we'll change the depth 2, 1, 250. The center panel thickness I will change to 16. On the frame width, I'll change to 150. And we go. So now this is updated my codes in panel and I can now click Edit Type and I could add materials. If I wanted to. Select a code and Grid. Open top, flip the grid. That'll remove segments on a select in here. You can see how he couldn't panel expands to suit the new panel size. So I'll click Edit Type. Change the tunnel material to something like glass. And I could change the frame material to something like aluminium. And their updates the geometry. So that completes the section on code and panels. And it also completes the section on how to use certain hosting and family templates. 32. 6.1 - Formula - Basic Functions & Arithmetic: Hi there and welcome back. One thing you may have noticed when looking at the Family Types dialog box is the column for formula. Formula allows you to drive and control parametric content within a family, within the family editor. This can be used to automate parameter values including dimensional, yes or no parameters and even text parameters. This enables your families to be much more powerful in terms of their functionality. In the following lectures, we will go into a great level of detail exploring the various syntax that can be used in formula. In this first lecture, we will explore the basic, basic concepts and some simple arithmetic. So let's pretend that we want to fix the height of our desk so that it is consistently 740 millimeters and it's not editable going to, it's not able to be edited by anyone in the project. To do that, well, we simply need to do is in the formula column here on the height is put our cursor into the formula and type the value 740. You can see how now the value is grayed out to 740. And if I click Okay, and I load this into a project, I place it. Select the Type. Go to Edit Type. I cannot change the height value. So even if I were to duplicate the type and creates a new type, 1600, I still cannot change the height variable. So that is one use for and probably the most basic useful applying formula. What I can also do is reference other parameters within the formula. So let's say I always wanted the depth to be the width minus 500 millimeters. What I could do is in the debt parameter under the formula, I could type in the parameter name width. And then the syntax minus 500 millimeters. And this now means that whatever my width parameter will be changed out to 500 apply. You will notice that the depth is always 500 millimetres below the width. Alternative lack and make it greater by changing the minus to a plus. And you can see if I change that to 1200 back, this will then be 1700 as it is 1200 plus 500. You can also keep it proportional. So you could use the multiplication factor. So the depth you could have is that the depth is the width multiplied by no 0.5, which would mean that the depth is always half the width. So you see if you change the width, that will update to a 100. You can also use the divide as well. So you could divide this by 1.3. And it will always be two-thirds of the size of the width. So you can see that, that alternative, you could make the depth the same as the width. And you could just simply put remove that syntax there and make the width equal the depth. And then it would always be the same size. So I change the width to 1200 and the depth stays 1200 as well. Finally, premises also a bay order of operations, so goodness or badness. So if we take the example for the depth formula, width plus 100 times too, you can see that the output is one hundred, four hundred, as it is doing the 100 millimeters by 2 first, which is 200, plus the width, twelve hundred, twelve hundred plus 200 equals 1400. However, if we change that to put the width in brackets, the width plus 100 millimeters in brackets. It will do width plus 100 millimeters first. So 3000 multiplied by two, which will give you 2605 Pi that you can see the depth changes that. So these are kind of basic, simple arithmetic functions that you can apply to formula to drive certain parameter values based on other parameters. A 100. And we can also use syntax to drive non-parametric dimensions. So let's say, for example, what we wanted to calculate the area of the workshop. We could create a new parameter here. Great, as a family parameter called desk area. Now we know that because it is two lengths multiplied together, it must be the area type. And it's very important that you select this, this correct type of parameter. Otherwise the formula syntax will not work. And then you can choose a group. So I would choose to put this under Data. Click Okay. So if we type in width multiplied by the depth and the apply, we get the area in square meters. So if I were to change this depth to a 100, the area would update accordingly. Right, that's it for some basic arithmetic. In the next section, we will discuss angles and triangles. 33. 6.2 - Formula - Angles & Triangles: Often when you're working with particularly more complex families, you have to do with angles and triangles. Be that working out angles, areas, all lengths. Rather than allow for trig ratio formula including sine, cosine and 10. And also Pythagoras theory formula to be used within the formula column. So to demonstrate this, I'm going to create two reference planes, one to the right here, one above him. And now I'm also going to introduce and create a reference line. Reference line is a three-dimensional line with full reference planes associated to it. So if I go into 3D, you can select the reference line here. You can see it has a reference plane parallel to the plane that it was drawn in. It has one perpendicular to the plane it was drawn in along its length. And it also has one reference plane at either end. You can then use these reference planes to host geometry too, which we'll see in future lectures. But also you can use it to associate angles. Two, unlike reference planes which have an infinite length and do not have a starter endpoint on their phone not suitable for rotation. The first thing I do when I drawn a reference line is I will always go to the Modify tab and align the end of the reference line to an intersection of two reference planes. So to do that, I click on the align tool, select the reference plane, hover over the reference line. So the top, you see this little dot denoting the end of the reference line. Click Unlock, then do the same thing for the other reference plane. This just avoids the reference line slipping when you start applying formula to it. So that we've got the base sets up. We can create a, some promises. We can create an aligned dimension here. And we'll create two premises. This one will be cold little b, and this one we shall call little a. And we can also now creates an angle premise into change the angle of this reference line. So under the dimensions we can create an angular dimension. Select the reference line and the reference plane, and click Create. Select the, um, the, the dimension. You can create a new label because it's a angular dimension. We cannot pick a length parameter. So we have to create a new one. We'll call this big a. And you can see how the type of parameter isn't angle. Now that we have a length and an angle parameter, we can use formula to determine what the, this, this length a should be based on these two premises. So to do that, we'll go to our family types dialog box. So I'll just comes from do this this way. So in our family types. So we can use trig ratio formula to calculate the length a. We know that a using trigonometry. Trigonometry should equal to1, a equals A divided by b. So this would give us the angle. However, we need to rearrange this formula to give us the value for a. So we just rearrange this formula. So a equals 10, a multiplied by B. And you can see how it's gone gray on it resulted in this value changing. And the reference plane changes when we click Apply. So now if we change b to say 1500, and a, length, a will change to suit. And if I change the angle to 45 degrees, length, I also changes. So I can also now calculate the hypotenuse. And if I click on the reference line, you can see I can create a dimension for the length of the reference line. So I'm going to click That's correct dimension. And I'm going to create a parameter, and I'm going to call this h. So now if I go back to my family types, I cannot create a formula using Pythagoras to work out the length of the hypotenuse. And through that I would use the syntax square roots can brackets a to the power of two. So note this is the symbol too, full to the power of plus b to the power two. Close brackets, select a pentane. Here. See how the formula and the value is changed. Click apply. And you'll now see that the reference line reaches the end and the intersection of these two points here. So if I were to change the angle to say 30 degrees, click apply. The entire geometry changes. And if I changed length b to 1200, the resulting a dimension and the hypotenuse changes to suit. I'm also going to show you how to calculate another angle using different trigonometry syntax. So I'm just going to create an angular dimension. Here. I'm not going to assign a parameter to it because it might over-constrained our family and formally. But I'm just going to go back into family types. I'm going to create a new parameter called capital B. And this will be an angle times parameter. So in order to calculate the value of b, I can use the syntax cosine B equals a length divided by the hypotenuse. If I want to rearrange that, I need to cut because I need to calculate the value of b. I need to rearrange this formula. And the manner in which you change the syntax is you would change it to a cosine open brackets, a divided by h close brackets. And you can see how this has now changed to 50 degrees. So if I were to change this length 2500 and the formula to angle 230, you see how this angle changes to 60 and that should be reflected in. An alternative strategy using the sign would be to use a sine B divided by the hypotenuse. And that results in the same output. Changes to 40. That results in the same output. So those are this syntax you would use for your sine cosine formula. This is just an image showing all the formulae that are associated to each of the values and variables that we've defined. The two angles a and B, the hypotenuse and lengths a and b. This image is available in your content pack for this lecture. 34. 6.3 - Formula - Conditional Statements: Revit allows for the use of various conditional statements to be used as part of formula. These are very useful for managing the geometry and constraints and providing flexibility and your families. The four main conditional statements are the if statement, the statement, the statement, and the statement. We'll go through the syntax now and then we'll look at how they work within a family. So syntax of if statements are if followed by open brackets, the condition and then a comma and then the result if the condition is true, and then comma and the result if the condition is false. And statements. And with an open bracket, condition one and condition two. And you can have as many conditions as you like. And this returns a yes if both conditions are met and it returns a no. If either one or both conditions are not met. The all statement is similar to an end, except it returns, yes. If either conditions are met and it returns know if neither of the conditions on it. And then the NOT statement, you can just you can just have one condition in here. And this returns a yes. If that condition is not met, it returns a no, if the condition isn't it. Additional syntax you might use for these formula include the equal sign for equal two and then the greater and less than sign. Right? Let's jump into family to see how these work in practice. Okay? Let's say that our desk has a maximum width and depth dimension that it can be. We can go into our family types and we can create this, these parameters. So maximum width, so length parameter. And we're going to place it under the constraints. And then we'll add another parameter down here and call this maximum depth. And we'll select prompt again, and we'll put it under constraints. We can then look these values in because we know what they should be, because this should, that should be 900. So the maximum niche and the maximum which should be 2000. Now, we can create a another parameter that reports back whether the width we've defined as the user is greater than the maximum width available. So to do that, we can create a new parameter. Down at the bottom left here. I'm called max width exceeded. And this type prompt will be a yes, no because it's either a yes or no return or result. And again, I'm gonna put that under constraints. And then I'm going to add a max depth exceeded parameter as well. Yes and no. And I'm gonna put this under constraints as well. So now we can use a basic formula to say if the depth is greater than maximum depth. Now you need to spell the parameter exactly correctly. If you have a space between maximum and depth, it tells you that it's not a valid premises. So the, the parameter typing must be exact to the parameter you're trying to match. And then I can do the same if the width is greater. Maximum width. You can see here how these are now grayed out. So I can't take them myself. And they will report back if I change the width 2100 tasks because I've got a formula in here for my previous session. So I'll remove this to 702,100. So the maximum it has been exceeded. And if the depth is loosened and 50, you have the maximum depth exceeded as well. So that's all well and good. But now I want to be able to notify a user in the project that the maximum dimensions have been exceeded. So what I can do is I can create a just going to create some model text. I'm going to say size, limit, exceeded. Click OK. I'm just going to place this. I'm going to change the size to 100s, make it bigger. And I'm going to change the horizontal line to the center and placing him. So now I can add a visibility parameter to show whether this will be turned on and off. So I can click on this associate family perimeter button here. I can create a new parameter called size limit. I'm going to have this premise that under the visibility grouping, I associate that taught new parameter. So what I can do is then under this size limit formula, I can type the conditional saving. Max width exceeded, comma, max depth exceeded. So this will now tick yes or true if either the maximum width, so 2500. See how it's ticked here. The maximum depth has been exceeded. So this has been ticked. So because it's either the maximum width or the maximum depth exceeded, because the maximum depth XY is ticked on, this size of that parameter will also be turned on. So I can load this into a project. To visualize this, place an implant, click on the element, click Edit Type and change the parameter to 2100. Click Apply. And you can see that the size limit exceeded box warning as a paid. So this is all well and good, but it doesn't tell me exactly which size limit has been exceeded in an individual basis in the project. So what I can do is I can go back to my family. I can copy this model text, change this text to width, exceeded. Change this text to depth exceeded. And then I'm going to change this text to width. And depth exceeded. Okay? Now you see all three of these are associated to the parameter because they've got a little equal sign that they're associated with the size limits. So I'm going to repurpose this size limit parameter. So I'm going to click on the size of them and I'm going to rename it by editing the parameter down here. I'm going to call it with error. Okay? I'm going to create two more parameters. Some depth, era as a yes-no under visibility, and then a error under yes and no and visibility. So under the both error, I can have a formula. And max width exceeded. Max depth exceeded. So when both of these max depth width, max depth exceeded max width exceeded premises, I'll take yes. This both area will be switched on so I can click Okay, and I can now associate this, re-associate this model text to this both error parameter. Now I need to change these texts hub because what I don't want is I don't want the width to show as well as both error. So what I need to do is I need to make sure that the perimeter and formula is correct. So what will change it to is understatement maximum width exceeded. And then we will use an embedded NOT statement for max depth exceeded. Then what this formula, oops, I need to add another bracket in that. What this formula is basically saying is that only when the max width is exceeded will this parameter value be ticked. So I can do the same thing here, so I can do and max depth, sorry, No, Ramon. And here I can do and max depth exceeded comma naught, max width exceeded. So I need to now associate these with depth exceeded to the depth error message. So now I'll let this into the project. Click over right. So now you'll see how you have the width exceeded because this is the only value shown. So now if I change the depth to 950, it means that both of these are now ticked. So only the both error message appears as such that and if I change the width to blow the maximum width is maximum its own takes on only the depth error is shown. So I'll go back to the project. So it's very useful and it's very important to understand how these conditional statements, words and it's worth playing around with the various bearer, various arrangements and nesting of statements. To get a full understanding, so have a play around as you feel, as you see fit. This file is that is available with the, with the content for this lecture as well for you to have a look. What we might also want to do in the family is actually prevent this geometry from exceeding the minimum and maximum geometry. So for example, if I were to accidentally type in 4.5 meters, click Okay, the geometry would match the 4.5 meters and you would have the width and depth and the width exceeded. Variable tick to prove that are going on to preview visibility and you'd see the width exceeded. Can turn it off. So what we can do, this actually assign the premises here to a value that will stop at the maximum dimensions. So I can do that by selecting on this dimension and creating a new premises. So I'm going to call this actual width the type parameter under constraints. And then I'm going to create an actual depth parameter again under constraints. And here into the family types. I can then use an if statement to lock the actual width and depth values to the maximum when the user puts in a value that exceeds them. So for example, under max actual depth, I can use the if statement. If max depth, max depth exceeded. So if that is ticked, then it should be maximum width. If the maximum depth is not exceeded. So this is not ticked. I can then just use the user input width. So here you see the condition. The condition is matched, the map depth exceeded. So when this is ticked or yes, then we will take the maximum width. If not, then revert to using the user-defined width parameter of actually unless those up and that should be depth. And that should be an alternative method of doing it would be for the, say, the actual width would be to use if width. So the user defined width is greater than the maximum width. Use the maximum width value. If not, use the user defined width file. So you can see if I can then change this to 2500. You can see that this actual width, because 2500 is greater than the maximum which is locked that value up to 1000. So if I change it back to 11200, you can see that it's gone to one hundred, two hundred because the width is less than the maximum. So if I load that into a project and I change this, you can see that the depth is specified at 950. However, the actual depth is 900. And if I change the width to something, again, 4.5 meters, click Apply. You can see that the warning for and depth exceeded is ticked and the actual width and the actual depth are the maximum value specified him. So I'll click Okay, and I can just double-check cracking jaw dimension since 2900. So if statements are really powerful in terms of controlling geometry and controlling which values are used based on other values. In the next lecture, we will go through how to use formula with text. 35. 6.4 - Formula - With Text: You can also use formula to define the value of texts parameters. If we go to our family types Donald box, and scroll down to identity data. And in the formula column for description, we have double quotation marks. Desk double quotation marks. This is how you lock text values into a text parameter value. So this would be consistent for every single type within this family. I click Okay, Let us into the project. Right. I set the parameter click Edit Type. And you can see how the desk is fixed and does not editable in the project. Go back to the family. You can see that I've also added in a some model text saying size exceeded, see the error text perimeter. And I associated a visibility premise, political era here. And if we go to a family types, I've created a formula where this will be yes, if the maximum width is exceeded or the maximum depth exceeded. This text. Now I'm going to add a new parameter called Error text, which will specify the exact error type that I want to put this into identity data and make sure that the type of premises is text. Okay? So I can now use conditional statements. So you need to be careful of the order of your conditioners and you need to start with the most specific. So in this case, I'm going to start with F. And max width exceeded. Max depth exceeded. So this is my condition here saying that if both the max-width exceeded and max depth exceeded, both of those are true, then return the value o, double quotation marks, desk, width and depth. To launch double quotation marks. I can then have another if statement which is a, which can be not as specific as this unstable. So if the max width has been exceeded, that I can have desk width too large. Now I have a final if statement. If max depth exceeded desk, Deadly to launch. And then the final one to close it off with when all of these conditions are false, which will be desk size available. And use three brackets to close this. So if I change the width parameter 2500, total, the desk width is two large chains. I'd like to solve a 100, change the depth to it that 950, that's telling me the depth is too large. And if I have both said to me that width and depth or too large. And then if both of them are under the maximum, then it suddenly the sizes available. Okay. Good into project. Right? You see how this is still visible, but probably because I've got, Yep, I've got a variety. So 1900. And you'll see how I click Apply. You see how if I change this to 2100, the error TTX comes to desk, the width to launch and the error message appears. And if I change this to 950 CE, desk width and depth, how to launch. But the actual geometry still meshes 2000 by 900 as it's defined by the formula in the previous lecture. One thing to note is just be careful on how you use this. Because a user might type in, say, 2500 and they might not know that this formula is being used to define the geometry. So it's always worth, if you're going to use something like this, building in some sort of graphical error message or description of how the family works. Otherwise, you could end up designing something either too large or too small because of constraints and formula written into your family. Okay, so that's it for text values within formula. In the next section and final section of lecture and final lecture of this section, we'll be looking at additional numerical functions. I'll see you then. 36. 6.5 - Formula - Additional Numerical Functions: In the last lecture of this section, we will go over some additional formula syntax that is available to use within the formula. So I'm going to start by drawing a muscular region. So I'm gonna go to Annotate masking region. I'm going to draw a circle. We're going to create a dimension. And then I'm going to create premise from the dimension radius. Okay? And then I'm going to finish the sketch. We can now use that radius value to find out the area and circumference of the circle using formulas. So I can go to the family types, creates a new parameter down here for area. Need to make sure that the type of parameter is an area. And I'm going to put it into constraints. And then I'm also going to create a circumference perimeter, which there'll be a length parameter. And I'm also going to put that into constraints. So we can then use the syntax of Pi to calculate the area. So it would be Pi open, close brackets multiplied by the brackets to the radius, to the power of two, which is effectively pi r-squared. And that gives us a value of 2.545. I can then calculate the circumference using to multiply by Pi, open and close brackets multiplied by the radius. And that gives me a radius of 5.9654. I click Okay, excellent masking region. The area which is this is purely a reporting value. I can check that it matches the 2.545. Yep. And if I click on Edit Boundary and click the line, I get a line length of 56, 54, 0.9, which matches the circumference value. So that is the use of how you can use Pi within formula. You can also use formula to force a yes or no value to be either yes or no. So to do that, I'm going to create a new yes or no premises. Call it yes. Underscore no credit as a yes, no value. Let's group it on to others for the time being. So if I want this to consistently be on or off, I can use various methods of syntax, or I can have either syntax. 0 is greater than one, because 0 is obviously not greater than one and therefore will be false. So therefore will be off or equally, I can have 0 equals one, and that will still be off. If I want it to be permanently turned on, I can have one equals one. And that is only turned on. And again, if I had wanted one greater than 0, and that will keep it perfectly turned on as well. Sometimes you may have typed in a parameter and given a parameter name using this sort of syntax, which if you were to put it into a perimeter formula, would think that this radius is one parameter and the circle is a parameter. So if I tried to do use the Cauchy, the circumference as. Using the formula, two times pi times radius circle. What this things is that the radius is its own premises and circle is its own parameter. Now it's not very good practice to use this kind of syntax within a, within a perimeter name. What you're best off using is something like an underscore. That isn't, isn't numerical syntax for any mathematical functions of if you have named it like this, there is a way that you can get this to read as a parameter. See you in the circumference, you would type in 2 times Pi and close brackets multiplied by. And then you'd use square brackets, open square brackets, and then type in the parameter named radius, circle, and then close brackets. And this will effectively group this parameter L1 and not look at the syntax inside it. So I can use the same thing for here. I can do to pi times open brackets, square brackets and radius, circle, close brackets, close brackets. And that works the same. It's not good practice because often if people quickly look at the formula, they'll think that radius, circle are two separate parameters which don't exist anywhere in here. So it's always good practice to try to avoid using this sort of naming convention within your parameter names. He final thing I'd like to discuss is rounding. So I'm going to create a new number parameter. I'm going to call this just number. And it's going to be a number type of parameter. I'm just going to put it into a group or general. So I can have this as, I could write this number as 25, 0.462 as a number type is a number with a decimal places as opposed to an integer, which if I draw it on here, an integer and that which is a hole which can only be whole number. So I'm going to create a new premise of cold rounded number, which will be a parameter. Put that in general. And then I'm going to create a rounded integer parameter. And that's going to be an integer parameter. Store that under general as well. So they're all the same. I can now use the round function to round Number permits. So I've simply typing round and the number in brackets afterwards. And it will round the number up or down, depending on whether it's between 0.5, it will round it down. And if it's 0.5 to 0.9, it will round it up. And I can do the same thing to the number here. The number. And it does the same crates, a whole number. You'll have the ability to round up or down. So if you round up, regardless of what the number will be, number is it will always round up. So this could be 25 point 0, 0, 1, and it will still round up to 26. Alternatively, I can round down. Using this syntax and it will always round it down even if it's 25, 0.9. However, there's extra complexity when trying to round length parameter types. I'll give a demonstration. So I'm going to create new crimes called rounded. Radius is going to be a length parameter. And this is going to be under general. So I'm gonna change this radius to 900.5464.6. So if I tried to type in round now and type in radius, circle also needs to be square brackets as well. You see I get inconsistent units. This is because dimensions cannot round. You kinda use the round function straight with dimensions. I'm just going to delete this formula, actually going to just rename this radius primates into radius. And once I do this, notice how these parameters here, they changed the name to match the name of the new perimeter, and it removes the square brackets here. So that's useful to know as well. So again, if I try and round the radius, I haven't consistent units, units because the round function does not take into account and is only used for unitless values. So because dimension has a millimeter value, we need to remove the units in order to do the rounding. And to get around that, all you do is inside the brackets for radius, we would do divide it by one. So we're dividing it by one millimeter unit. And that effectively cancels out the millimeters. So that will now run the radius divided by one. So it'll round to the 900.6 just as a number. And then to get it back into millimeters, we need to multiply it by one after the rounding has taken place. And you can see it's now gone to know a 101. So if I change that to 956.4 is now rounded that to 956. Obviously I can round up then to 57, and I can also round down. We can also round to the nearest value, not just one. So to do that, so if I want it says rounded to the nearest five. I could use the syntax, open brackets, round brackets again, number divided by five millimeters or five units. Close brackets twice, and then multiply that by 5. And you can see how, whoops, I need to choose the radius. And you can see here how it's rounded it to the nearest five. So if I go to 9.457, round down to 95 5, but if I have 9.657, it will round it up to 960. So that's a good way of if you want to segment your dimension, It's a good way of using the round function to round up the values. Obviously, if I have 900 and then it will be 900, right? That completes the sectional formula. I've hope you found it interesting and you can apply it in your family creation to make powerful families. 37. 7.1 - How And Why To Nest Families: Hi there and welcome back. In this section, we'll be discussing and demonstrating how and why you would nest families into each of them. So river has the capability of loading or inserting families into other families. And there are a number of reasons you may wish to do this. Firstly, it will reduce the complexity of the main family. As you can see, when you start to have more complex geometry and start to add reference planes. And you can easily see how this would build up into an overly complex family that will be difficult for either EGN the user to edit yourself. Who creates the family to edit? If you've, if it's been a while since you edit to the family. The other benefit is that you can use the same components in multiple families. So for example, these legs could be loaded into a number of other desk families. And it would be a inefficient way of modelling if you had them all as individual extrusions like so where I'd have to edit this one. And then I would have to edit this second one. And then I would have to go into my whole miles a desk families to edit them as well. So how do we go about nesting of family? So first I'm going to do, I'm going to delete these link families and we're going to create our own like family. So we get a new family. I'm going to select the Finish a template because we're still in the furniture main. The main family is still finishing open. So I'm going to create some reference planes for the depth. Change my scale a bit of depth. I'm going to create a reference plane just on the right-hand side. Cold thickness again to my right elevation. And I'm going to create a reference plane for the height with a dimension snapping to the reference plane, the level dimension cold like height. And then I'm also going to create some reference planes for the leg. We're going to call it support thickness. And then going to create a extrusion. I'm going to use the PICC lines tool. So I'm going to pick the lines, I'm going to lock them. And I'm just going to quickly run around picking the reference plane at the level. Doubling up here because I missed one here. And then use the trim tool to trim the geometry around so that I get a nice solid. Sketch. Click Finish, go into plan. Extend my geometry back to the other reference plane for the leg thickness and lock it. Go into my 3D scale. Always looking well, I'm going to create the object style that I had in the original family or legs. So Object Styles, new legs. Okay? And then I will associate this geometry to the legs so category. And then also create a material parameter associated geometry. So now that I've completed it, I can now load it into my actual desk family. So what I can do as a way around saving the family first is I can load this into my project is on clothes. I'm not going to save it. It's going to load. And then I can place it straight into the desk. Family plays here and here you'll see the placement point is at the center reference plane. And the placement point is at the back of the desk. Can I go to 3D? And I go to my portrait browser? Now? Expand that out a bit. You'll see that under furniture. And now have family full, which is the family name. And then I have the type underneath. What I can actually now do is right-click and rename this. And I could call this simply leg. Could copy that text and rename the type 2 leg as well. So that's an alternative way if you don't want to save this family until 70 desktop 0 files location somewhere. So obviously this leg is completely out of proportion to the geometry of the desk itself. So what we need to do is associate the parameters in the desk leg to the premises and the desk. So it'll do that we go to Edit type. Because we make these type premises. We can then associate material to the leg material. So we would do is we'd select the associate. Finally perimeter, select the leg material. This is now associating the parameter in the leg family to the parameter in our desk family. And like depth, again, we're going to associate to the actual depth of the desk, the leg height. So we don't actually have a leg height parameter. So what we can do is create a new one. So associate creates a new height parameter, will put this under constraints. Click Okay. Like thickness week, we don't need to, we don't necessarily have to have a pregnancy if we just want to keep it as 50. But I think we have one in this project, so I'll click Associate, select thickness. And then the support thickness. We can create a new parameter as well. Okay, okay. If you now click Apply, you'll now see the geometry has adjusted to suit the depth. However, the heights has not because we need to assign a formula to the leg height premises. So if we go to family types, so we have a leg height prime, It's okay that we created, we're going to use a formula. Remember how we use the formula in the previous section. So we're going to create this as this is height minus the top thickness. So this now gives 710, which is 740 minus 30. Click Okay. So now these legs are correct size. We can now use the align tool to modify a line to line these legs to the reference plane. So we sought the end reference point here. So the reference geometry that and look, and then we do the same for this side and look at that. So that is it. So then we can test the flexing so we can change the height. So here, but change the width to make sure that the legs move with the desk yet. Change the height. Yep. And change the depth to nip all looking good. So now that these families in, if we never need to change this, Let's say we wanted to change the geometry. We could easily just select this family. Click Set electronically, select Edit family. And if we wanted to, out of sweep around here, what we could do is we can go to sweep. It usually pick path tool. We can then pick the outside edge of here to create our 3D possible. Click Finish, Edit Mode. Edit the profile. Go to front. And then we can draw a semicircle. And then lock that parameter, this sketch to the reference plane off the profile. So now we finish and we have a suite of that span running the design here. We can join these two together so that it looks like it becomes one. Lead us into the project. Overwrite. And you can see how both of them have now update it to suit. So that's the benefit of creating nested families and using them for creation of geometry within another family. And therefore, it means that we can now remove from his family who needed to these reference planes fully leg thickness. However, we don't want to do that because we've got these 2D detail items on here. So but if he didn't have any geometry referencing those reference planes, you could remove those reference planes to make the geometry a little cleaner. So that's it for the basics of nesting families. In the next lecture, we will look at nesting families that can then be scheduled within a project. So I'll see you then. 38. 7.2 - Shared Families: Sometimes in Revit, you may wish to schedule, tag or select a family that has loaded into the family. For example, here I've created two socket families that can either be on the left or the right side of the desk. I have loaded it into a project and randomly assigned some desks to just have the left socket and some to just have the right socket and some to have both. I've, I now want to be able to quantify the number of sockets that I have in my entire project. Now, currently, if I select this desk and try and top isolates in the view first, I cannot select these nested families and they just behave as if it was just native geometry within, inside the family. So notice make it so that the socket families are independent on schedulable and selectable in the projects. I need to make them what's called shed, its nose. To do that, I'll select on the family, creates it as an electrical fixture, family, edit the family. And then there's a parameter here, will actually be here called shed, which when I take this button and then I load it back into my desk. Family, but partially enclosed. I'm not going to save it over the existing parameter values. Nothing, nothing much ostensibly has changed. But then when I load this desk into my Revit project, you can see that if I set the desk now and isolate it, and I hover over the socket and top, you can see I can now select the tap, the socket individually from this family account, deletes it. Trying to leave. I cannot move it. I cannot change the type, but I can select it and give it some instance properties and also some type properties as well. So this now means that I can schedule this within the project and also tag it on drawings if I need to survive and go to you. Should you, should you in quantities, electrical fixtures. Just call this socket schedule. Okay. We'll just use the family name. And the count. Sorts it by the family name. We're going to itemize every instance, change the formatting to make sure the count, calculate the totals. And then we have 19. And if I select in this row here, and I go back to my 3D, you can see how it selects them all. I have now changed my office arrangement to have this additional desk in the corner here. And I want to add this socket family to this desk. So once we do that, I will click edit finally on this corner desk. I'll then go to my rectangle, the desk, edit the family for the socket, load into project on clothes. And I will pick the corner desk family. I want to add the socket family to not gonna save the changes. And I can place it, just place it on the ground here. I'll just move it to position it. And the colon in this reference plane. And in elevation, I'll need to use the align tool to align it, to cite the top of this geometry. And look at that. Now I can load into port it and close. I can load this into the, into the project. That's overwrite it. And now you can see that this desk now has the socket. And if I go to my socket schedule, it's now got 17. And if I select all of these and go back to my 3D, you can see how it's selected these families and also the one in, on the desk. So this is showing how shed families work when the nested into multiple families. What happens now if I want to change this socket family? If I'm in the rectangular office family, I can edit this family. And I'm just going to go to my left view and I'm going to make this, I'm going to edit this extrusion on. I'm just going to square it off. Delete these, and I'm going to finish. And then I'm going to see how it's not just a simple rectangular load into portraits and close, I'm going to load it back into my rectangular office desk. Not going to save it. See the geometry changed. Now, when I load it back into the project, say in closing. So if I override the existing version, so because I'm trying to load a shed socket family from this desk family. The socket family already exists in the project. So I've got three options. I can override the shared family from the desk, rectangular Office versions, IE, the one that I've just changed, I can override the shed subcomponent family and its parameter values with the new one I've updated in the in the desk rectangular office version. Or I can ignore all the changes to that socket family unusable in that's currently in the project. So if I select the top one over, I would shed subcomponent family. Click OK. Go into 3D. You can see how this, even though this is a different desk family, the socket family has been updated. If I close my desk family and tab select on one of these sockets, I can actually edit a family from within the project environment. So I can edit a family here. I can go to front. I can add I can amend the extrusion. Extrusion. Now it looks like that. I can then load and load into the actual Revit Projects, not going to save it over the existing version and see how it changes in both of these desk families. I can insulate the desk family and that family because it's not already open. It's called the updated family. Yeah. So that's it for families and how to manage them between content is important to get the concepts, understand the concepts of shared families and also, but I would urge caution. Do not think that every family needs to be a shared family only, only if it needs to be tagged or scheduled separately in any way to the host family, it does not necessarily have to be shed. So consider that YZ 39. 7.3 - Nested Profile Families: Another useful use of nesting families is to nest profile families, which can then be used in geometry such as sweeps. Here I have my buck board, which I've created using a sweep along a path here. And I've just, the profile is drawn by just editing the profile and drawing the geometry natively inside the sketch. However, I can select the profile if I have one loaded in my family. So knowns credit profile family, just going to discount, it changes. I'll go to New family. Down in the templates. I would choose profile, metric profile, open. I would set up my reference planes. So I've got a height and a thickness. Are then create some premises. Just edit the type of bees. Dimension lines. Have a tick mark line, weight, thin specimen. Okay. So I will set the dimension, I will give it a parameter. So this is thickness. Okay? Then I will select the height parameter. Crazy products called height. Okay? I'll also create a sort of setbacks within the family that I can use. I'm just going to change the parameters to something sensible that I would have in the, in the family so that the scalar which I drew first draw this profile is kind of sensible. So hi, I will change to about 200. And the thickness I'll change to about 10. I can move these dimensions down. And I can also change the scale to make it bit more human-readable out the smallest size. So I'm going to create a reference plane. Talking of Watson. Going to create a dimension between these two. Now I'll create a parameter offset. Okay? And then also create a reference plane with a dimension. And I will call this set. Okay? So now I can create the Lines to form a profile. So I'll select on the Create line. I will use the PICC lines to look reference planes and use the trim tool to change the shape. I need to add one more in here. So this is the shape of my profile. I'm not going to load it into my desk family. I'm not gonna save and we'll rename it when it's in my family. So now you can see it's appeared in Profiles down here. Family seven. Go to right-click, Rename and just call it Blackboard. Or actually partition presents consistent with the parameter name. Let's copy the text. Rename the type. Based on. What I could also do is I can right-click on the type, click type properties. And here, this is where I can associate these parameters that I created in the profile family, two premises in the desk phone. So I can the height I can associate with the partition height. The officer, I will leave us 33. The setback I will just change to five millimeters. And the thickness. I haven't defined a parameter yet, so I'll define that primacy now. Partition, thickness. Ok, select 10 mil and click Okay. So now we've associated the permitted in the partition profile family, two premises in the, in this family. As you can see here, politician things. So if I click on the sweep, I click Edit sweep. I can now click on the profile. And if under the drop-down from this profile, I can actually pick the partition, the partition profile. And you can see it's changed here. If I rotate around, you can see it's changed. However, it's actually sitting on the wrong side, sitting in the wrong orientation. So when I finish this sweep now, you can see how actually I want it to be facing in the other direction, changed the scale. So instead, what I can do, so I can go to Edit sweep. I'm going to click on the profile. I can then click on the profile is flipped. And that will flip the profile vertical axis so that is not facing the right way. Note that you can also change the horizontal profile offsets and vertical profile fits and also the angle. So I could change the horizontal profile offset to 50. So change the offset and the offset to 50. So it will go up. Can also choose minus 50, so it goes down. I will try to avoid using these because if the if the parameters change, then the horizontal, horizontal, vertical profile offsets may not necessarily be valid and you cannot associate parameters to them to change with any other parameters. And again, if the angle I can change that to 45, if I need to. I'm going to keep this on 0 and have a profile flipped. So click Tick to finish, and there we go. So now my profile is updated. In order to change the shape. I would have to right-click and edit this partition family in order to change the actual geometry and shape of the profile family. Kinda close this here. So that's it. That's how you associate and load profile families for use in sweeps. 40. 7.4 - Parametric Arrays - Part 1: We're now going to take everything that we've learned over the course to create two parametric array families. The first where we will draw a line based component, and it will ultimately create a row of desks based on the length of the run that you draw. And the second, we will create a parametric lieu of a family that you can place inside a panel. There'll be a few new concepts that we'll cover. However, most of it has been coded in the preceding lectures. Right? Let's crack on. So I'm going to create a new line-based family so that I can place it, select the start and end point in a project. So I'm going to go new family. I'm going to pick the generic model line-based template that we discussed in the previous section. So here we have a reference line with the starting and end point. I'm going to change the length to be something a bit great. So 4 thousand just to suit the size of the family will end up with. And I need to load my desk family. And so I'm going to go back to my desk. I need to make sure that the desk is shed so that when we load into the projects, it will be schedulable and we can count the number. So I'm going to load into projects on clothes, going to load it into my new family. So I'm just going to place one. Yeah. So I'm now going to align the family too. These tossing reference planes like so. Now I'm ready to create my array. In order to do that, I will select the desk family, and I will then select the array tool up here. So if I click this, I can create either a linear or a radial array for that. In this instance, we're going to create a linear one because we're going to want it to go along to the right. I once a group and associate them. I'm going to keep the numbers two. And this Move Tool defines the next element that I click in place. So for example, if I click the, I have this clicked on second, and I click to create an array. This new. And instance that I will create will be the second one in a row. And any new dock creates it as part of the array. If the number increases, will move to the right. If I select it as lust. And I put the new instance at the end over on the right here, all the other instances of the array will fall in between the first one and this last one. So I'm going to move it to second for the time being. What I like to do is move it somewhat down just so that, and I'm going to set this to three. And you can see how it's changed that I'm now going to align the second family instance to ensure that it's always going to be aligned in a straight line. So now I can click on his end when I click and drag and you can see how they are evenly spaced as I drunk driving along. And now obviously need to define the spacing as to how far apart they should be. So I'm going to create a reference plane. I'm going to give it a dimension. And I'm then going to give it a parameter called desk. Okay? So what I can now do is assign a variable to this array number. So if I click in this middle group. Which contains the family. Here. I can then change this number by clicking F4 and it adds another one in a rock and then click the array itself and add a new label under this drop-down to add parameter. And I can create a parameter called number of. Ok. So now if I go to my family types, I can change the number of desks to say five, and it will add another one on the end here. So I end up with five in total. Now you'll see how in this model group, this desk is the 1201. However, I may want to swap between a 1801 in my array family. So what I can do is I can click on this desk family. I can assign it a label. I can add a parameter, and it will ultimately create me a what's called a family type parameter. So I'm going to call this desk type. I'll put it into the construction grouping as a type parameter. Click Okay, and I'm going to finish. And now what this allows me to do, if I go to family types, is it allows me to swap between the two available desk types, the upload it into this family. So if I click Apply, it will then swap these desktops around. What I now need to do is associate each desk type and width to the desk weight parameter that I've created to allow for the correct spacing between the components in the array. So I will create a new type in this family called him 1200 width. Okay? And I will set the desk width to one hundred, two hundred. Click Apply and see how the desk with because that I will then create a new type called 1600. Okay. And I will change the type to the 6000 type. And I'll change the desperate to 1600 and click Apply. And you can see how this reference line, reference plane here, but just to match the size of the type. Now that's done, I can click OK. I can use the align tool to select the reference plane and then select the second array, and then look at that. So now if I go into a 3D and I put my family types and I swap between the two types. So I go from 1600 to 1200. You can see how the spacing changes and the size of the family changes as well to the 1200 type. So this is all looking good. The last thing I need to do now is to actually define the actual number of desks based on the length of the array that I create. So I'm going to go to my family types. And what I need to do is put a formula into the number of desks parameter. So I'm going to go down a bit. Well, it is going to be basically the length divided by the desk quit, which will give me a whole number. However. Oops, that's not valid premises yet because I've got a space in this one is kidnapped. So I'll click Apply. Now you'll notice here that an error has appeared because, because the length is an instance parameter, the number of desks also has to be an instance parameter. And instance problems that cannot be used in tight formula. So in order to do that, I have to cancel. So that this number of desks perimeter click, Edit. Change this prototype to instance. Click Okay. So now because it means that as the length changes per instance, it also means that the number of desks changes put in. So I'm going to click Okay. And it's now reduced it. And you can see as I gradually increase the size of this length, it will then add in additional desks. Obviously has to obviously has to use some rounding. So when it gets to say 6600, it will add another one just because of the rounding that happens in the, in the formula. So that's it. So now we can save this family and load into a portrait. Going to go File Save As family. Ultimate desktop. I'm just going to call it desk array. Say var. I'm then going to load it into my project. I'll go open. And if I navigate to a floor plan, I can go to component desk array. I'm going to place on a work plane which is level 0. Here I could choose Level 1. So I wanted to produce level-0. Click to start, drag it across, click to finish. And you'll see how it's filled in the gap with the array or desks. I can click on this little toggle button here to reduce the size or increase the size as I need. I can also go to 3D. I can also change the type to be 1600. And you can see how the size changes and the spacing changes, but the number reduces. I can also change the length. So that is the basics of permits carets. And you can see how they'd be very useful in specifying things that are say, like this. And you can create the arrays quickly to spread the desk across, say, a number of offices. It's a lot quicker than adding and copying individual desks. And also the line-based, you can change the rotation to sue any angle you needed to, for example, additionally, because they are shared, I can go into 3D and the icon type, each one individually. And we could then schedule out those, these ones. If we say required. Jumping back inside our family, there are few things we can do to ensure this family is as robust as possible. Main thing being that if an array gets to a number below two, so let's say I change the length here to 1200. The number of deaths should equal 1, however, and I click Apply, it says that the number of Desk has an invalid value. This is because the minimum number of instances that an array can have is two. Otherwise, it then doesn't become an array. However, the problem with that in a project is that if you say reduce this length down to less than. To get a narrative that says Count, make the type. So if I go back to my desk array family, in order to get around it, we can put a minimum value on the array. And then we can create an individual instance does only visible for the single desk. So to do that, go to Create Component. I'll pick the top 100 milliliter desk. I will assign it the desk type parameter, type premises so that when it changes, so when I change between family types, 1200 to 1600, this desk size changes. So we can do what we want to do is basically limit this number of desks value to at least two. So what we can do is we can actually create a new label, new parameter. Um, I'll call this actual array number. Remember it has to be instance. So I'm going to click Okay. And what I'm also going to do is create a visibility parameter for the single desk, so visible and then associate finally permanent pen to create a new one. Let's call it single desk. And it will be instance under visibility. Okay? And then I will also edit this group. Select the instance of the family inside the group, creates another visibility parameter. Just call this array another instance premises, and set that to the Visibility Group. Click Okay. And finish the group. So now all of these share the same visibility, primates it because they are part of the same group. So now if I go back to my family types. So we can then use the formula that we've learned previously to define this actual array number. So we can use an if statement. So if the number of desks is less than 2, set the array value to two. Otherwise, it should be the value presented by the number of desks parameter, those brackets. So this is basically saying that when the number of desks calculated by the length over a desk width formula is less than to stick the array, fix it up to. If not, then it should be whatever the value for the number of desks is. But we also want to do if the array number is two or it should be one, we want to turn off the array. So to do that, we can do array and we can do a number of desks less than two. So this means it will turn off when the, sorry, the number of desks is greater than two. So this means we want, wants to be turned on and visible when the number of desks is greater than one. Sorry. And then with a single desk, we can just have a NOT value. So not array buckets. That basically says when the array is on, single desk will be off and vice versa. So now if I go okay. And if I just load this into the project as it is, I have obviously I haven't moved this single desk here, but it's project over, right? So if I now stretch this back to less than two, you can see how the single desk has now become visible and the array has disappeared. So if I zoom in, this is the back of the desks in the array. And if I stretch it out, you can see how the array appears. And if I stretch it back, you can see how this single desk appeals. Now if I go to Edit Family, I align this desk with the faculty, the desk. I'll just undo that and show that warning again. Align. There are identical instances in the same place. This will result in double counting and schedules. However, this isn't applicable because when the single one is turned on the arrays to enough, and when the array is turned on, the single one is turned off. So actually in this instance, we wouldn't have a double counting in the schedules. So I'm going to lock this permits a analysers going to double check that this is locked to that. I'm going to load this into the project. So Overwrite. See the decimal notes now, no matter what length I draw my array, even if I draw the length down to really small, It's not going to break. And even if I change this to the 1200 type, it's going to change. And I can then stretch this as far as I want. So that is how you create robust parametric arrays that are almost impossible to break through any user input that defines the number of arrays. In the next lecture, we'll be looking at creating a love of family that we can host inside current panels that use very similar principles and a few other features. I'll see you then. 41. 7.5 - Parametric Arrays - Part 2: In the final lecture of this section, we will be creating another common architectural elements, a louvered code symbol panel. Please note that this lecture is significantly longer than previous lectures. So please use the bookmark function if you'd like to easier to specific pops. Here is what we'll see is the end result. And you can see that this is a curtain wall where I've created a code and panel. And if I adjust the height to say 3500, and I adjust the length, you'll see that the number of blue the blades increases or decreases if I reduce the size. And also the liver blades stretch the current and panel. Additionally, I've added the functionality and to be able to change the angle of the Louvre blades themselves. So if I select on the panel and I change this liver angle here from 35 degrees to say 20 degrees. Click Apply. You can see how the blade, blade angle changes. So if I change that back to 35 degrees, click Apply and see how the angle changes. I'll just quickly briefly explain the prices of creating the components and then we'll go through more detail. So the family is constructed all the phase-based Louver blade family demonstrated by the fact that I can pick new here and I can place it on any face in the project. Click escape. This is then loaded a nested into another family, which allows you to control the angle. So I can change that from 45 degrees to 30 degrees to 20 degrees, and then up to say, 80 degrees. This family is a nested into a just a generic model family that has the frame and the parametric array of the movers. And then this family is the nested into a curtain wall panel family. The reason that we would often model this panel as a generic model is that we can then use this family to then nest into other family types, such as windows or doors, or even keep it as a generic model if we just wanted to, for example, created similar, I just wanted to place it freestanding within the project. If I had created everything within the code and panel family template, as we've seen in the, in the section on hosting and templates, we wouldn't be able to then adapt this family for any other purposes. So it's good to have a almost a generic model family that can then be repurposed into any other family that you need. Just a little trick that we use in practice to maintain the flexibility of the families. So let's get straight into creating our family. So first I'm going to create the phase-based little bit blade family. So to do that, I'm going to go to new family. And we were to scroll down to pick generic model phase-based as our template and hosting. Open. And you can see here we have the face font go to a 3D view. You can see this is the face to our liver will be hosted on. So we need to do is create some reference planes and then some geometry. So I'm going to create a reference plane on the left and the right. And we want to be rotated about the center. So I'm going to create two reference planes, top and bottom. I'm then going to create some dimensions. I'm going to equalize these dimensions. And then creates a whats. And then the same for the height scale. And I can create a parameter for the width. Keep it as type. And I can create a full height. So in the left elevation, because I wanted to leave it to be rotated about its center points. I need to create two reference planes above and below the face. Aware the livable, it will be placed. I'm going to create two reference planes him. I'm then going to tab until you can see in the bottom left-hand corner where it says reference plane. So let that on the bottom reference plane, I'm going to equalize those. Actually going to change this to 65 before I equalize them. And then I can add a parameter for the depth. Okay? And if I flex this now, say 100 and see how these reference planes flex him. So now I can just, I'm just going to update these to be slightly more realistic. So this height might be 50 millimeters and the width will coupons to a 100. So then we can just create a simple extrusion for the blade itself is the rectangle tool and then to snap to the reference planes and then lock. And then we can go to our left view again. And we can drag the geometry down and up to snap to the depth. Reference points will also assign a material to the geometry. So we'll just call this simple material. And we'll also create a subcategory for the generic models. Okay, so that is our phase-space. Family for the loop ablate done. Now we need to create a another family in order to add to the capabilities to do the angle. So to do that, I will go to file new family. Now this can just be a simple generic model family template with no hosting. So I go to open, just going to close my windows here. So firstly, in the left-hand view, what I'm going to do is I'm going to temporarily hide the reference level by selecting on the sunglasses down in and selecting Hide Element. What I'm now going to do is draw a reference line from the center intersection here. Puts in. And if you remember in the previous lecture about reference lines, they have, if I go to 3D view, they have full reference planes that you can host geometry to. So we will be hosting our phase-based loofah blade onto one of these reference planes. So if I go back to my left and elevation, I'm going to align the reference lines and to the reference line, to the reference planes. By using the line tool, selecting the reference plane, hovering over the reference line, selecting top until I can see the dot. And then selecting, unlucky. Now rev, it behaves very strangely when it comes to 0, 90 degree, 180 degree, 272 degree on 360 degree angles. So it's best practice if you need to create an angle to create a another reference line offset from the 90 degree axis. So I'm just going to temporarily hide this reference line. And again, use the align tool to look at this reference line to this colon here to reset temporary overruns. And again, I'm just going to hide this level. What I'm now going to do is creates a angled dimension to this low reference line. I'm going to say this reference line, and I'm going to change the angle to one degree. What I'm gonna do is lock this angles so that this reference line cannot move. Then what I'm going to do is create another dimension between this reference line and this reference line. And this will be the actual geometric angle that will be used to Angle aluminum. So I'm going to create a parameter from this cold actual angle. And we'll keep it in constraints. However, this angle will always be one degree more than the angle we require. So therefore, what we can do is go to a family types. Go to Create New, creates a angle parameters and make sure the type parameter is angle. And this will be the user inputs a handle on what we can then do is we just type in 30 degrees in here. We can then put a formula in the actual angle to angle plus one degree. So this will make that an actual angle then the angle we defined up to the 90-degree reference plane and refusal plus the one degree we've specified here. Okay? Now what this allows us to do is we can have an angle of 0 degrees, which means it's flat, but it will not break the family as often you'll see constraints broken if you set reference lines on angles to 0 degrees. So the actual angle is one degree. And again, if you set it to 90, the actual angle is 91 and, and it gives you a perfect 90 degree angle for the reference line here. So that's just a good best practice thing to note when dealing with reference lines and angles, especially if you need to have the 0 and right-angled involved. So now we've created this geometry for our angle. I'm just going to shrink these down a little bit. We can now load in our family that we created. I'm just going to go to the previous family, going to load into projects and close. I'm not going to save it. So now we can place it. I'm just going to click Modify. Firstly, I'm going to undo my family sat on the project browser, expand generic models. And I'm going to change this to blue, the late on renamed the type as well. One thing I just want to check is that I actually assigned to the geometry, to the subcategory. No, it did not. So I need to assign the subcategory. To do that. I'm just not have made it. Okay. And then assign the subcategory. Then load into projects and close, won't save it. Overwrite existing version. Now we can go to a 3D view. And again, I'll change the scale. So now we want to host our geometry on this reference plane, the end of the reference line. So to do that, I can go to Create component. It will pick the loo, the blade. I then wanted to place it on a work plane. So I'll click Place on what plane. Under this drop-down menu under placement plane here on the toolbar. I will then select pic. I will then select, pick a plane, okay? And I will then hover over until I select that reference plane here. So now you can see that it's going to host this geometry on this. Reference plane again and select to place. There we go. So now if I go to my left-hand view, I can use the line tool to align to the center of the loop a family. And then if I go and change the angle to say 30 degrees, because the liver is hosted on the face that is 90 degrees perpendicular to the reference line, the loop and now moves with it because the reference plane, I just draw a line here to represent the reference plane that is hosted on all the face in terms of the family hosting is this line here. What I now need to do is bring across the premises from the lubridate into this one. So I can click Edit Type. And then I can create my new depth parameter, type level, career my height parameter, and then create my width parameter. And I can also run across my material. Okay, That's great. And I can just test this. This works reference level. I can test my width is working 1600. Yep. But I'm just going to do as well is just align the center of my Luba. See the center is offset. Nasa just sent to that center line and go back into my left elevation. Reset temporary. Go to my family types and just change my angle to 45 degrees, just showing that it's still working. Okay, perfect. So now I have my individual loofah family. What I can now do is create the generic model that contains the frame and then will contain all these liver plates to create our panel. So I'm going to go to File new family. Again, I'm going to pick just a generic model template because I don't want any particular hosting. Click open. So now I'm going to create my reference plane for the width of the entire panel. And we'll simply depth censored in the middle here. I'm also going to create a couple of reference planes for the frame width. This across here. So now it goes create some dimensions, change the scale of my view. Dimension of course then dimension for the width. Just Skybox you can see tension across him. And then a quality dimension across here. So I'm going to create a width premises. I'm going to make this instance. I'll show you why. This is important when we come, when we come to load it into a curtain wall panel family. And since him. So at these two premises dimensions, and this will create this cool little frame width. This can be typed because it's going to be the same within the project. So that's fine. And we'll create some more dimensions for the for the depth, which can also be a type permanent. Now need to go to a front elevation and create reference planes for the height and also for the frame widths. So I got the dimension again for the height, remember to top, to select the reference plane. And again for the frame, what's its permanent cold heights? And we need to make this instance. And then just because we've already created the frame width perimeter can select these two dimensions on the left and, and the drop-down select frame width. So its changes very much to be a bit more SQL. So we'll say efficient millimeters. So now we can basically creates offering and we're just going to do it using an extrusion. So create extrusion. And I'm just going to use the rectangle tool to pick the inner rectangle and then lock these edges here. And then I'm going to use the PICC lines tool to pick a local just so it looks straight away the edges and again turn to hover a B level. I click Tab to select the actual reference plane. Then use the trim to just trim this off. See you have two closed loops. Finish the sketch, and in 3D they have a frame. Need to go to plan to make sure that we stretch the extrusion and look to the depth of the frame. Let's make this announcement of width a bit. Thinner is one. So now we're ready to insert our Luba and we'll family. So go back to our family here. I'm going to load it into the project and click now. I'm just going to place one out. I'll just delete it. And again, I will then rename this to copy that text, paste it to that. So now we're ready to create our array. So first we need to create a reference plane that will be the first array reference plane here. And we will seek to create another reference plane for the centers of V. Louis sons character, the one here. I'm going to call this reference plane. We can select it and click, click to lambda. Cool this bottom. So I can then go to component. And I can place this here. If I wanted to. I could edit this family and select this button here, which means Work Plane based. That's all that means is when I load it back into the project into another family, I can select a specific word, plain old reference plane. So I'm just going to select time-based, hit, load it back into my projects and Close. Don't Save it. Click Overwrite. And now you can see that I can now edit the work plane that this loop of sits on. So I'm going to click on Edit work plane. I'm going to pick our balsam Nuba reference plane that control snarky go into a left-hand view. You'll see that it now sits on this reference plane here. I'm not going to use the line tool to center it in the center. And I'm also going to, because my innovation zoom in, I'm also going to align it to the center. And I need to associate the premises in this angled live a family to parameters in here, and it will just control the dimensions. So I'm going to click Edit type. I'm going to get prompted for the angle. I'm also go to create an angle foldy. I'm going to call this loop at depth. Let's create an angle called height. I'm going to credit number four. Okay? So now we want to be able to associate the Louvre width to change in proportion to the width of the central panel. So in order to do that first, you notice how this is an instance parameter, the width, because it has the word default to the end, we need to change the width to be an instance parameter as well, to change that to instance. And then we can use the formula. Width minus two times the frame width plasma. And you'll see how now deliver blade extends to the width of the gap creates about the frame. If I change this width to 1800, you'll see the Lewis reduce it down in size as one. So that's looking good. So now we can go ahead and create our parametric array. So we click on the Lula and we click on array. We want it to be a linear array. And we want to place the second Luba at the point defined by our spacing. So I just click, once, click somewhere, change that to three. And here we have a parametric array of and use the align tool to align to the center of reference plane. So I sent to all UGA family to make sure that it will always be political. And I'm also going to go into my front elevation. So this top one and move it to the right. And then use the align tool to bring it back and lock it. So I know that it will always go vertically upwards in both the front and left. Elevations. Now can create dimension for the spacing dimension here. And call it the spacing. Again at the top level is fun. And then I can use the align tool again to lock my Luba to this reference them. Now you'll see here how I cannot align the reference level of the liver, aka lines the reference line this up one degree and also to the reference plane here, however, I cannot do it to the horizontal level. And this is because if I edit the family fully Luba blade angled. And I click on my left view. If I tap to select the reference plane, you'll see that is referenced is set to null to reference. This means that it won't be picked up and you can reference it full in any other families or if you load into the project. Hence, why couldn't select that to a line. So I can then change this to a weak reference. I can load it back into the project, into my little pile family. I can then use the align tool, set the reference plane again. And then you'll now see that I now have this horizontal reference line here I can select and look. So now if I try and change the spacing, 250, 300, you'll see that the spacing of the loop as increases to suit. Now that we've created the basic setting outs of loofah panel, we can now go ahead and create the necessary formula needed to power this parametric array. So if I go back into my left-hand view, I select the liver, one of the modal groups. I will select the array. And we will now give that a label or a parameter. And I'll call this the number of desks and needs to be instance because the height is an instance primates and that will be lovable very, on an instance basis. I'll keep on us over. And I also just need to check that the align tool has been used on this lower. Some of them. Yeah. So if I were to change the spacing, that looks good. So what I now need to do is calculate the distance between the two frames. And this will be the amount of distance that the lovers can spend between. So to do that, I can get to my family types. I can create a new parameter called Through the vertical span. Again, this needs to be an instance because the height is instance and can put it under constraints. I will also move the Louvre width, two constraints as well. Now I can put in a formula which is height minus open brackets, 2 times frame. And this will give me that results in spacing. I change the height to something more sensible. And there we go. Okay. So now I can create a formula to calculate the number of desks, number of desks and the lovers. For this. Let's disband between this vertical spine here. It'll just be a simple lieu of a vertical span calculation divided by the Luba spacing. Click Apply, and there we go. If I increase the five, reduce the spacing. You'll see that the number increases. So however, we want this to be spaced evenly between the top on the bottom so that there is equal gap between the top and the bottom liver. So to do that, I'm going to create a parameter between this reference plane here and the reference plane signifying the inside edge of the frame. So I'm going to click Okay, I'm going to go to my dimension tool, creates a dimension here. And then I'm going to create a parameter called mover. Stopped. Offset is going to be instance again. And it's going to go into constraints. Okay? So now I just need to type in the relevant formula. And that formula will be the open brackets, Louver vertical spun minus the Louver spacing multiplied by in brackets again, number of lovers minus 1 because I want to, I want to remove one spacing from the top as there is this top loop here, there isn't another spacing here. We need to remove one of a number so that the calculation ends at the end of the approver. And then enclose all those in brackets, and then divide that value by two so that the resultant the resulting calculation splits sit over the top, on the bottom. There we go, if you millimeters. So if I click Apply now, you see how the ultimate mover reference plane has reduced top offset. Click Okay. And I come the measure tool. Measure that distance that obviously 50 millimeters. And then if I go to the top and go to the center, this loop until the sense I'll reference plane, that is also 50 millimeters. So I can change the spacing to say 120. And you can see how the spacing changes. I'm just going to reduce the size of my Luba a little bit. So the height 100 times 20, and the depth will be 18. So there we go. So now I'm ready to place this Luba into a curtain wall panel. Finally. In order to do that, I'm going to go to File new family and I'm going to create a curtain wall panel. Now what I can do is I can go back to my blue the panel generic model. I can go into load, into project and close. Now. And I can just place this here. I need to check that it's oriented in the correct way. So I'm going to look at my left view and see that yet the exterior and it's pointing, its orientating the correct direction. So I can then use the I can then select the Lula and you can see how because it's an instance premises, I have the track errors that appear. And it's always best to use this functionality within coding panels to drag the unlock the extents to the reference planes in the code and panel. So that's the width. So if I were to move one of these reference planes. See how the width changes as well. So it's a different mechanism of assigning effectively and incidence problems. So you see that the width is not defined by an associated family perimeter, but it's just the geometry itself has been locked to the reference planes. So you can see how the wits has obviously changed. As that gets smaller. If I go into my exterior, I could do the same thing with the top and drag that up to here. And look at it. But you'll see how there isn't an arrow on the base. And this is because the light goes my left view in the panel. If I tab on to the reference plane here, this is set to null to reference. So if I were to change this to a weak reference, and because all of these parameters for the height, I'll go to my front elevation. For the height on the frame width are associated to the reference plane and not the level. When I load this into a project on clothes. And I select a drug are now pays and I can select to drag, unlock it to that reference plane at the bottom. Then if I also want to talk to create a reference plane, to create an offset, creates an offset premises in a tight level. Click Okay. And then I can align the reference plane. Can set this to 0. And then what I can also do is go to my edit type. And I can also then need to associate all the premises across two provinces in this code and panel. So I'll click OK. I'll go to New, I'll just changes to angle. Again. I want this to be instance. I could change it for each individual can panel family if I didn't want to, I don't want it to be the same for all types. I could have it as a type parameter. Change the depth. That again, this will be a time frame width. I'm just going to keep the Louvre depth. I can move the depth parameter again, type based Luba height. And the loop of spacing. I can also have a type parameter. Okay? And I'm just going to say now if I go to my family types in this cotton wool panel, you'll see that it has all this associated premises. So if I go to 3D and I go to my family types and I change the angle to 25. You'll see how the angle changes and that pollen. So that is it. That is how to create a code and panel. So now I'm going to save this to my desktop. I'm going to call it little tunnel. And I'm going to create a new template from the Architectural Template. And you project from the architectural template. I'm going to create a going to use the store front. I'm going to draw a cone, will flip it over. Goods my 3D. Just turn off levels. I'm not going to load in my coding panel family to the project. Go back to my 3D. Click on the store front, select Edit Type. And under the curtain panel. I can then scroll down to pick my Luba panel family that I've just loaded in. Click OK. And there we haven't replaced that. All these coding panels with my new liver cotton pile. Change this to a hidden line. My scroll zoom in. You can see how I can change each angle individually, 60 degrees. And you can see how that's changed, then change it to 80 degrees. And I could change this one to five degrees. And you can see how the algo has changed. If I were to select on the curtain grids an auto remove a few. You can see how it updates the cut and panels to suit the new height. Okay, So that completes our two lectures on parametric race. I hope you are able to follow along and create your own parametric or a family. Once you have mastered these complex families, you'll have a good understanding of many of the topics covered in this course. I hope you have fun creating the families and you should take some time now to create alternatives, explore using different formulae shapes, and also integrating some of the other concepts we have learned on the course, including level of detail, visibility, prominences, and object styles. Thanks very much. 42. 8.1 - Detail Items: Not only allows for the creation of 3D families, and it also allows for the creation of 2D families that you can use for detailing jury later technical design stages of a project. These families are not associated to the 3D geometry, but instead provide construction details, all the information in a specific view. They are essentially I groupings of lines, fills, and sometimes other nested detail components to create a single arrangement of either one element. Or as you can see in this window, the cell has a number of elements connected together. So we will go ahead and create this simple sleeved multifamily. So to do that and go to File New family and detail item. And you can see, hey, we just have a single flow plan view with no elevations sections. That is because it is a 2D family. Under the Create tab, we have lines which are the building blocks of detail components, which are just 2D lines. Detail components which if you have any nested diesel components, you can use detail groups, symbols, masking regions which are 2D white fills that hide any geometry. Unfilled regions which are 2D patterns that you can define in Navy in the detail component. So let's begin by creating some reference planes. First, I will change the scale of the drawing to make it a bit more. In scale, I'll create a reference plane. And I will create a dimension. Too. Crazy dimension needs to specify the TI length. I will then create some reference planes. So they tie width. So that 225. Then also want to create a midpoint turn choreographers plane and just have a dimension m. So this will always be in the middle. If I change this to 20, this reference planes now always in the middle. What do they want to do is create detail lines. So I have one rectangle here, which is a solid positive tie that is outside of the sleeve. And then I'll also create some of the detail lines. But instead I will choose the subcategory, hidden lines. I could create another subcategory if I liked, but I just know that hidden lines will provide me with a dashed parents for the time being. That's fine. Hidden lines I will select Lock to actually delete this sentiment in here. I can then navigate and snap both Muschelli to the end of this. Reference plane here. When I change the length to say 150, the lines move and off snap to the central reference point. Up to 220. I can also add a little circle in the image. I can just make that radius. That's very thin as a semicircle. So I can zoom in and draw, click and draw all the way around. And I'll redo this. Create a circle because they are hidden lines. So I can create two of them. Select them and change them just back to the detail lines. There we go. So the reduced to two millimeters. There we go. Now I can create the sleep talking to trim this. So I know that my sleeve will be here. So I could change the dimensions for the width. And I will change this to be 12 and 13. Now it's going to move these reference planes to the right a little bit more. What I actually need to do is change where these lines snap too. So I'm going to move this is reference, these detail lines to this reference plane here. And then move these ones here. Change the sleeve with two thirds. And then create my undo them. Pink detail lines, thick lines to create my sleeve around so that I have and I'm just going to use the fill tool to fill it. Five. Five. What I can now just creates another dimension from the starting reference plane here to the end of the sleeve width. And just create this as a parameter called length. Can create instance parameter. Okay, so when I change the length prompt to say 260, it moves the sleeve with it. And if I change it to 240, this leaf back up to 260. I cannot. The extra information that I want in the opening of the tie here. I can just send this temporary dimension. And the same for this one. Slit the line, see the little toggle here and I can move the witness line to the center, then click on the blue text and change that to six as well. I'll keep that as it is for now. So that's how we'll tie. Pretty much complete. I will click Save, Save. This. Will tie detail. I had some safe to each other. This length is an instance, promises, yep, I will load into the project. And I can now place it flow here. Because I've added the premises. I have these this drug arrow that I can use to drag the geometry, oversee it overlaps here, which you might not necessarily see in the project. But I can drag this tie to the length that I need. Lost the actual solid TI stays the same. Now place our wall tie inside a detail, for example. And you can see here that it sits behind these other detail license for the bricks. If you wanted it to sit on top, we could create a masking region that hides the rest of the detail components. So we go back to Edit Family and we can create a masking region that effectively sits over the top of this geometry here. So we use the PICC lines to pick the detail item subcategory line to match what all of these lines on. And we don't want to pick the detail lines. We want to make sure we pick the reference planes. So we'll just go around selecting the reference planes and use the trim tool. Trim the shape. And then we go and who just for that, the ends to make them the same time. So finish that. This bucket, that project over it. And you'll see the muscular region has now mast everything below it. And I'll put this to the top. So use it the Maschine regions wisely in terms of how you will need detail component to sit within the family. And they have a family cannot be updated and stretched to suit. What you may also want to do with diesel components is combined two together. Here we have a parametric raise access pedestal and we have a raised access panel. And we want to combine the two. So what we will do is we'll create file, new family. Creates a new detail item. Will go back to our pedestal selected, edit a family, load into portraits on Close and now we will select our new family seven. Don't Save Changes, will lose, will place it in the sense at the bottom here. And what we then want to do is I'll just change the scale is associated this height to a value in this, in this family. So we can click on height. So underside of flow, click on associate family parameter creates new firms a height to the underside of flow. I'll keep the same text to be consistent on an instance premises say, okay. So I go back to my panel and edit my family and then load that into family seven. And notice I changes. I'm going to place this here for the time being. Obviously we want this panel to move up and down along with the pedestal so we can create a reference plane. Greater dimension from here to here. And associate this dimension to a premise. Or we, sorry, we already have the premises so we can just select it from the drop-down list. And now we can use the align tool to align the entropy. Whereas axis flow panel to the center of the penicillin and the ultimate the panel to that reference pin them and now you see the overlap. So now when we change the underside of the floor heights of say, 250, both pieces of geometry move. I can save this as Flow D, So item put into the project. And you can see I place it appear. Finally ion, we can now edit it to suit that particular height that we have. A detail view. So that's how you can nest to detail items into one another, associate the province of values, and load it into a project to create a combined or parametric arrangement. 43. 8.2 - Tags: In order to, to graphically extract information from either 2D or 3D elements in a view, you need a tag, tanks or 2D annotation elements that are very specific, unidentified properties of the elements of that is associated. To tag elements, you simply go to Annotate, talk about category. And if there is an appropriate tag for that category, you will be able to hover over the element, in this case the door and place the tag. And you can see here this tank is called ANOVA underscore, underscore toe. And it's got a type name called Mock. And as you can see, it is picking up the mock value E one and E D. I wonder if I change this to ED O2. See that they type the Mach and the tack changes. Alternatively, if I select the tank, you can see how the text goes blue. That means it is editable. I can then select this. I can change the text here to ED u3. Click off. Now if I slipped the door, you can see how this mock values now ED O3. So there are two ways of changing the mock information, either through the element or through the time. However, I now want to tag on this drawing. In his view, the fire rating of this door, which I defined under the type parameter for firing. So in order to do that, I will select a time. I'll go to Edit Tech. In the center here you'll see that the piece of text, and if I select it, you'll notice that it says a label. And the label is a type of annotation that is associated to a parameter or number of parameters. And we'll display the value of the premises when the tongue is associate to an element. If I click on Edit label here, you can see how under the label Parameters box here. The parameter named Mark. And I've placed a sample value in there just so I can give an indication of how long and how big this task will be. To the left, all the available parameters associated two doors. And here we can see fire rating. So what I can do is before that I can cancel. I want to assign a visibility parameter to my mock label so I can turn it on and off. So I'm going to associate a family perimeter here, create a new parameter and just call it Mock as a type parameter. Click Okay, well I'm going to do then is I'm going to copy this label. I'm going to paste aligned to the same place. And then before when selecting it, I'm going to click on the associate family parameter toggle for this new label. And I'm going to create a private school fire rating. I'm going to put out into the visibility country here. And now with it still selected, I can go to Edit label. I can select in the mock row. I can use the bullets and hey, with the red arrow to the left to remove the parameter. And then I can find the fundraising parameter. And I can use the plus and hey with the green arrow to the right. And I can place it in here. And I can type any sample value, say 60. So I'll click Okay. So now I can go to my, you can see here they're obviously overlapping. And if I hover over, I can see that's the fire rating one. And if I press tab, I can select that as the Mach 1. If I get to my family types. Or I'm going to change the mock permitted to be on the visible zone to edit. I can change the visibility here. So under the mock value, I'm going to untick fire rating. And I'm going to create a new type called fire rating. Going to click Okay. And I'm going to swap these two. There we go. So now I have two types won't go. Fire rating, which shows the fire rating. And one called MOC, which shows the mock. I'll click Okay, so now I'm going to load this into projects. I'm close, I'm not going to save it. I'm going to overwrite the existing version and its parameter values because I've made new types and set those correct type values in the family edits mood. So there we go. So now I select the TOC, click on the drop-down and I could select fire rating. And you can see how it now correctly reads FL 60. So to edit this tag here, select the door, either edit, attack, the value for fire to three. So far a 120. I get a warning. It says I am changing the type parameter. This could affect many elements. So if there are multiple instances of this door type in the family, it will obviously change every instance of that type because the fire rating is a type prompter. So I split yes. And the FR is changed to a 120. If I go to Edit type of the door, you can see that it now says a 120. And I can change this back to 60. So let's I want us to have both the MOC and the firefighting shown. What I could do is go to Edit Family. I can again copy this label. Paste aligned to same place. Creates a new parameter called Mock and fire rating. Group it under visibility. Okay? Okay. Now if I go to my label, I can add in the mock inside here as well. I can then use this button to move it up. I can put a sample value. So E, D, dash XX. And I wanted to pay on a new line so I can put a break-in and that will put it onto a new line for each, for these two premises. I can also put prefixes and suffixes to each one if I wanted to. So I'm just going to prefix this with Mark just to demonstrate. And I'm going to prefix this with fire rating. Okay? I'm going to expand the, I'm going to align it to the middle, which it already is. I'm going to expand it a bit so I can see that it will be that sort of size. We're going to go to my family types. And I'm going to create a new type called Mark and fire rating. I'm just going to select Mock and far-reaching. And to load. It's a project override existing version and its premise of values again. And here you can see on our mock and fire rating. So I select that. And it shows me both the MOC value, which is editable. By clicking this dialogue box on the fire rating, which is also editable here. Let's say I now want to add to the acoustic racing premises to my door types. I do not have a standard built-in. Rabbit primates are cool acoustic writing, so I'm going to have to create them. However, I'm going to have to create as a shed in order for it to appear on any tanks. So to do that, I'm going to go to my shape parameter file. I've got the one that we created for our earlier lecture linked to on my desktop. I'm going to create a new permits, a group. Cool this acoustic. Okay. And I'm going to create a new premises. I'll just keep as a text permits so I can talk more like I'm going to call it acoustic rating. And I can edit a tooltip and type in acoustic rating the object. Okay? And okay, so here it is. So now I can add it as a project premise. So I go to Manage portrait premises that select Share parameter because it'll be a shared parameter for my Skillshare browser file. Suck the acoustic rating. I want it to be time-based, wants to go under Identity Data. And it'll be associated to click. Okay. And Okay, again, now if I select my door, click Edit Type, scroll down to identity data. You see I have an acoustic rating here, which I will fill out with something like 51 w db. So that's great. So now I need to add it to my tag. So I'm going to edit my tag. Family under the fire rating and the Mach. I'm going to edit this label. And you'll see that the acoustic writing doesn't exist in this list of parameters here, so I can add it using our parameter. It has to be a shared parameter. It cannot be anything else because it must appear in the project and it must be bill to pay on text. So I'll click Select. I slipped my acoustic racing perimeter from my chaperones file. Click Okay, and you can see how it has now appeared here. I can add that parameter into here, and I will type just a sample value. So I'll just, just type db. And I will type in the prefix, acoustic rating. Space, dash. Click. Okay. And now I can move this back into my project, right? And you can see here how it's now added a credit rating value that I defined in my time. I might want to edit my family just to expand the textile a little bit more. And you can see here, what I've forgotten to do is I need to add a break between the fire rating and acoustic rating so that they appear on separate lines. So I looked up back into my project overwrite and you can see it as updated. And if I go to my door, select Edit Type. I could change this to say 33. Click Apply. And you can see here that the acoustic rating value has updates it. What am I also want to do is because this is now mock fire rating and acoustic rating. It's actually edit the type, rename it, and call it Mark comma phi. And acoustic. Writing. There we go. One thing to note about taxes that I would always try and have the minimum number of tanks in a project that you can. Often projects, I'll see individual tanks for individual parameters. However, what you're best off doing is creating a tag with all the relevant types that you need in the project so that you'll use is, I'll clear as to which tag is used for which. Right, so that's it on tanks. Hope you understand the concepts of creating and editing the parameters on labels associated with an a tag. To tag any parameter will shed premises that you wish. Fuel elements. 44. 9.1 - Doors: In this lecture, we'll be looking at creating a door family from scratch. Note that this lecture will use Revit 2021. However, the functionality is pretty much the same as before Revit 2020. Hey, I have a project with a wool into which I am going to place my door family. I'm going to go to File new family. I'm going to choose the English family templates. And I will scroll down to select the metric template. That will then click Open. And this opens the door template. The dual family template that I have opened already contains two architrave and two parameters for the frame projection, internal and external distances. If I go to my 3D view and I go to the visibility graphics of this view. I just want to turn off dimensions because I don't want to see these in this 3D view. So here I have the architrave around the dual, which I'm just going to remove. And I will also go to my family types. And I will delete the frame projection, projection, extension, internal and the frame width. This is just to reset this door family prior to starting. So looking at this family template, I have a piece of text indicates that this side is the exterior side of a door. And I have a wall here with the exterior side denoted by the orientation flip arrow. I have two reference planes on the edge of each face of the wall. And I haven't opening which cuts a hole in the wall. Like so. This is the opening which I can edit the sketch to. If I go back into plan. I already have a central reference plane. And then two reference planes either side with a parameter called width associated to them. And they are equalized amongst this central reference plane. If I go into the exterior elevation, which we'll be looking at the exterior of this. So from the top downwards, I have a, another reference plane at the top here with a parameter and dimension between that and the level with a parameter called height. I also have these two symbolic lines indicating the opening direction. I can't delete these if I wish, but I will keep them here. As so. If I go to the Family Types, I can see I have the height and width parameter because these are built in, a cannot delete these parameters. And I also have a roof with a rough height parameter, again, built-in, so I cannot delete them. There are varying ways you could use the roof width and height and width and height parameters. The roof, which could be used for the structural opening. The height and width could be either made the same as the rough width and rough height or used in a different way. Alternatively, if you wish to use different share parameters that aligned to your own internal standards, you could, for example, set the formula in these parameters to 0 and not use these parameters at all. It is completely up to you. I will be ignoring the rough width and rough height premises. And simply using the height and width parameter to define effectively the structural opening for my door. Click, Okay, and I should go back into plan. The first thing I would like to do is to draw the frame. So I'm going to set out and draw some reference planes for the frame. I'll first create a reference plane for the front offset of the frame. And then another reference plane for the frame, depth. And then a reference plane fully frame width. Like so. I'm going to give this a reference plane, the name frame front. And then this reference plane, I can call it frame. I can then create an aligned dimension. Between the reference plane at the front of the wall and the frame of reference plane actually change the scale of this view to one to 10. To make the dimensions a more suitable size. I will then add a dimension and then create a parameter for the frame depth. I haven't created a parameter for the frame offset, so I will do that. Frame. I'll call it frame offset. And I'll keep it as type. And under the dimensions grouping the same as the frame depth. I also want to create a reference plane back from the front of the frame for the leaf thickness. So I will select this reference plane, use the Copy tool. And just creates another reference plane. For the down. Creates a parameter dimension between the frame. And I will call this the leaf Rhea reference plane. And I will call this parameter leaf thickness. I actually want to create another parameter for the stop. So I will copy this reference plane for the frame width and place it out. Create actually two-dimensions because I need to set the frame width, depth. You'll see how all of these reference planes come to create the geometry when we create the frame in the next step. Because these are premises, these can all be adjusted later. I'm now ready to create the frame. And to do that, I will use a sweep. So I will go to the exterior view. I will go to the Create tab, select sweep. And I first want to set the reference plane that I want the sweep to sit on. So instead of the exterior reference plane, which is the reference plane associated to the exterior face of the wall. I will click on the drop-down on. I will select the frame front. Quick. Okay. I will then sketch the path. I will use the PICC lines 2 and the automatic functionality. And I will pick the left-hand reference plane first. So the profile appears on the side that I've drawn the reference planes for the frame, the top. And then the side. I will use the trim tool to trim these reference planes together. And then the align tool to align the frame to the level. Click the Finish Edit Mode button. Once the sketch has been complete. Go back into the plan view. And I can see that the sketch has been drawn on this frame front reference planes. So when the frame offset parameter changes, the profile will move with that reference plane. So I'm now ready to edit the profile of the frame. If I had a profile loaded in the same sketch, I could use that, but I will just be using the Edit Profile functionality for the time being. I'll use the PICC lines to, again with the lock functionality activated. And I will select the reference planes that I need to create the frame. It looks confusing now, but I will then use the trim tool. To then trim the shape tools I need. Click, Finish edit mode, and then Finish edit mode again to complete the sweep. And now I have a swept frame geometry. If I go into 3D, I can see the frame here. And if I go into the left view, I can see at the top how the geometry has swept around the top of the door. I'm now going to adjust the dimensions to make the frame a more suitable size. So I will change the frame width to 32. And then they stopped depth. Two. 15. So here I have a frame. I can now select on the sweep. And I can change the subcategory to be the built-in frame and million object style. This is just good practice whenever you are building door families. And the number of standard built-in object styles as parts of the door template. Now that I have drawn the frame, I can draw the leaf. However, what you'll notice is that because I only have the dimensions on the right-hand side with the reference planes. I don't have them on the left-hand side. So I will need them in order to constrain the leaf geometry. On the left-hand side. What I can do is actually select a reference planes. And the dimensions. I can use the mirror pic access to on the Modify tab. Select the center reference plane. And it will mirror the reference planes and the dimensions to automatically snap to the reference plane. On the left-hand side. I'll also need to do the same on the left view on the top in order to snap the panel geometry, leaf geometry to the appropriate location. So I'm going to create another reference plane like so. And a dimension. And set this to be the frame width. So now the reference plane is aligned to the top of where the leaf will be. Again, I can change the scale of this left view to make the dimension size more appropriate. I can then go into my floor plan again. I can create an extrusion. Again, use the PICC lines tool. And I can pick the frame front of reference plane. The inside of the frame on the left, the rear reference plane for the leaf, and the inside frame on the right. Use the trim tool to close off to create a rectangle. Finish the sketch. Was the geometries selected? I will change the subcategory to panel. And now I just need to go to the exterior elevation. Select the geometry which has been crazy here. And I can then simply drag this geometry up to be show. I can use the align tool to select the bottom of the frame and select the panel extrusion and lock the geometry to that reference plane. So now we have eight basic DO family with a frame and a leaf. If I change the width to say 1200, I can see the older geometry dates. And if I go to the exterior elevation and change the height to 100, I can see the geometry updates in elevation as well. I will change this width to 100. I'm now ready to save and load this into my project. To have a look. Firstly, I will save the family. I will just save it onto my desktop. The time being. But you may wish to save it in a location more appropriate to your organization. I'm just going to call this internal single Save. And I will also create a new type called width to height millimeters. And they'll actually just set the frame front offset to be 25. On the framed up to be 90. Just to create a rounded number. I can now load this into the empty project. And now I can place the door inside the wall. Like so. If I go into my 3D view, I can see the dough has been placed and has cut out a hole in the middle. Like so. However, I don't want to be able to see the leaf in plan and I want to add a plan swing into this dual. I also want to be able to have different levels of detail at the coarse, medium and fine levels of detail. So I will go back into the door family. And I do not want to see the leaf in plan any point during the project or any detail level. So I can simply click on the leaf Geometry. Select the visibility settings either on the ribbon or in the properties. And I can untick plan ACP. So the geometry is not visible in planning an ACP. And also I can untick when it's causing planner ACP if the concert reports, however, I do want it visible in coarse, medium and fine levels. For example, when I'm in 3D or in elevation or section. If I load this back into the project and overwrite, the leaf is now not visible at any detail level, but it is still visible in 3D. The difficulty comes with the frame, because I do not want to see this frame in plan in course mode, but I do in medium, I'm fine. However, if I remove it from the coarse mode, i then it won't actually see it's in-course mode in 3D or elevation of section for any of the other views in the project. So therefore, I have to use 2D annotation to define the outline of the frame in plan. So I will undertake plan and RCP for the visibility settings for the frame, but keep the detail level ticked for all details. I now need to add a masking region effectively on top of this geometry. And only set that to be visible in medium and find view. To achieve the medium and find View Visibility. So what I'll first do is I will select the frame and I'll temporarily hi to the element. I'll then go to the annotate tab and I will select masking region. I will then make sure that the line for the masking region is the frame. And I'm going to choose the cut version of the line style rather than Romney projection, because this will be visible as a cut line. I'll then use the PICC lines tool and I will effectively trace over the frame outline. I will now draw the other side. I get highlighted lines, overlapping warnings, but this is okay because these lines will not extend over to the left. Once I finish the sketch. Like so. Click Finish, edit mode. And I now want to change this Visibility Graphics Override so that the masking region is only visible in medium on fine level. I also only wanted to show if the door is cut, if the door is not coat. For example, the plane of the view is set to above the dual. I will not want to see this mosquito region. So I will tick this option here. Now reset temporary hide, isolate. And I will load this dual back into the project. Overwrite the existing version. I can see that not much has actually changed. However, if I now go to the View, I cannot see any of the frame. But if I go to medium, I can now see the frame outline. On this frame outline is being shown by the masking region, not by the 3D frame geometry. If I go into 3D, I can see the frame here. If I change the view detail level to the frame still remains because the 3D geometry of the frame is set to be visible. Old detail levels. Now that I have the graphics of the frame and leaf fixed, I now want to create a couple of lines representing the door opening. So to do that, I can go to the annotate tab. Select symbolic line, which is a line that is only visible in the view perpendicular to the plane that it is drawn in. Ie, in this case, the lines will only be visible in a plan view and not in a 3D view. I will select the plan that swing line style or subcategory from the drop-down. And I will use the PICC lines tool to select the right-hand reference plane. I will then select the Start, End radius AAC tool. And where the frame meets the left-hand reference plane. I will then draw a 45 degree line all the way up until it snaps to the right-hand reference plane. Click. And then I will create an arc like so. I will then use the trim tool to trim the symbolic lines together. And then the aligned tool to align the right-hand symbol in line to the outside edge of the wall. So I now only want these lines because they extend the entire width of the door to only be visible in detail level when the frame is not visible. Depending on how you want the plan, swing to show will depend on whether you select Show Only if instance is cut. I'll keep it on ticked for the time being. I'm now ready to load this back into the project. Overwrite. The lines have not appeared, but if I go into detail level, the opening lines have appeared here. I could select Edit Type, and I'm going to duplicate this type to create a smaller DO. I will call it 900 and remembering to remove the two at the end. And then I will change the width to 900. Click Okay. And I can see how the size of the plant swing changes. As the geometry changes. I now want to add some opening plan lines to the medium on fine modes, but I only want them to be placed within the frame. So I go back to the family. I go to the annotate tab, select symbolic lines, PICC lines again for the edge of where the leaf is. And then creates the Start, End radius of the corresponding or the edge of the leaf drawer. It's at 45 degrees until it snaps to the. Symbolic line or reference plane. And then use the trim tool to extend these lines together. And the aligned tool to snap to the end of the symbolic line to the edge of the leaf exterior face. Like so. Then load this back into the project. I can see that in the meeting view it has now appeared. However, I have not assigned the correct visibility properties. So I will select these lines. Here. It's a visibility settings and set them to only be visible in medium and fine. I also want to add a leaf thickness line here to give it an extra bits of detail. So I'll go to the Create tab. Create a reference plane. Draw it somewhere out to the left. Draw a dimension between this new reference plane and the edge of the leaf, making sure I select the reference plane or not the symbolic line. And I can set this to be the leaf thickness. I will then create the symbolic line using the PICC lines too. A line the bottom of this line to the outside edge of the leaf. I now need to extend this line up towards this area. However, I need to still ensure that the size of the OK remains the same as the width of the leaf. So to do that, I can actually just simply draw a new symbolic line from the corner of the symbolic lines here. I can then trim this horizontal line to the interface of the leaf symbolic line. I will then set these two lines to be. Visible only in medium and fine mode. Like so. When I load it back into the project now, overwrite, I now have this extra level of detail of the leaf and plan swing here. And if I select the door, change the size to the 900. The plan swing automatically updates. To update the size. I've noticed I need to add in a horizontal line at the bottom here. So I will go back to the family. I can't just go to Annotate symbolic line. Draw the plan swing line, somewhere like here to ensure that it locks to the two reference planes. Change the line to only be visible in medium on fine. And then align the symbolic line to the outside face of the dough. Load back into project. Click over right. So I have the line for the door here. Again, checking and change the size. And the dough updates to suit. If I select Edit Type and for example, update the leaf thickness to say full t v geometry of the frame and the plan swing also updates file and change. For example, the frame depth to 150. Iframe also updates. If I go back to the family, I can select the frame geometry, create a material parameter, for example, cold frame material. And then a parameter for the leaf material. To allow me to change the materials in the project. Again, I'm choosing type, but you may wish to create it as instance, or even audits as a shape parameter, depending on the use of the parameter in the family. The same can be said for the rest of the dimension. Parameters or any other parameters you add into the. Depending on how you wish to control your dough families on schedule them, you may wish to create these shared parameters so they can be scheduled and placed inside all your door families. I will load this back into the project to ensure that the project has the latest version. Select the dough, select Edit Type. I have these material premises here which I can apply in this project. Two more things I wish to discuss with these door families. If I activate the align tool in the project, I can hover over the center and the left-hand edge, I'll right-hand edge of the door. However, if I also have a within the family, there are a number of additional reference planes. If you see in the bottom left-hand corner, for example, it says it is highlighting the weak reference frame front, which is the frame front reference plane we created in the family. However, you may not wish for all of these reference planes to be selectable in the project. Especially when you have complex families with lots of reference planes. You may only want to be able to align elements in families to a number of particular reference planes. So to remove the ability to align all, select a reference in the family. I think goes back into the family. And if I select on a reference plane, for example, the two reference planes for the outside edge of the leaf. There is a property in the properties called reference. They are currently set to weak reference. And if I click on the drop-down, there are a number of additional options. However, I can select not a reference. Click Apply. I can do the same for the inside edge of the frame and also this leaf thickness reference plane for the plan swing of the leaf. I can change these two, not a reference. I also want to go into the left view and make this reference plane not a reference. Now, when I load this family back into the project and overwrite, and I select the Align tool. As I hover over it, you'll see I now do not get the reference planes for the frightening. I get the horizontal ones because I have not changed these ones, but I do not get the vertical reference planes as an option to snap to or aligned to in the project. So this is a very useful way of being able to manage the complexity of reference planes within families. And this principle can be applied to any reference planes in any family types. The final aspect of door families that I wish to discuss is about wrapping when inserted into a wall. If I go to this element, select Edit Type. And at the wrapping outs inserts property currently is set to do not wrap. But if I select both and click Apply, I can see how the outer skin and the skin of the will build up wrapping inside where this insert is for the door. If I click on the structure of the wall, I can see that these layers wrap here. So the brick wrapping here is this brick that is wrapping here. I will actually untick the erupts from the rest of these we'll types. So that's just the internal finish. Gypsum wallboard and the brick or the wrapping layers. So I can see how the brick is wrapping inside the until it hits the center of the wall. If I select this door, select Edit Type, and change the frame front offset to say 150 millimeters. The rapping at the incense does not update with the movement of the frame. For example, I want this brick finish to end at the outside edge of the frame and the plasterboard wrapping to finish out the inside edge of the frame. So to achieve this, if I go back to the family and I select the frame at front reference plane, there is a property called wall closure, which when I select, will allow the rapping to finish at this reference plane. I can do the same with the reference plane for the frame Rhea. Select closure. I will then overwrite the door in the project. Click Overwrite. And I can see that the wrapping has now updated to finish at the reference plane. For the frame and reframe front. If I was to then select Edit type, again, change the frame front offset to, for example, 120 millimeters, and change the frame depth to 175 millimeters. Click Apply. I can see how the wrapping still updates to the new dimensions defined by the reference planes. So this is a very useful tool, particularly when it comes to more detailed drawings on detailing within your projects. So that completes this lecture on creating a basic family. There is potentially a lot more detail on functionality that you can add it to your families. However, I suggest you explore these at your own pace and to ensure that the door families suit the purposes of your deliverables. 45. 9.2 - Windows: Following on from the door family that I created in the previous lecture, I'll now go through the process of creating a simple window family. This lecture again will be done in Revit 2021. However, the functionality is the same as previous versions. I go to File. New Family. Select the English folder and scroll down to metric window. Click Open. And similar to the door family template, I have a wall with an opening, but I also have a default sill height reference plane called sill. And the default sill heights premises is the height that this window will be placed in the project. By default, I can then change the sill height once it is placed in the project. If I look at the family types, I again have the height, width, height, rough width parameters built-in by default. I will firstly change the scale of this view and bring some of the dimensions further inside. This is the exterior side of the window. And this is the interior side. So make sure that you are modelling on the correct side. When modelling the window, I will create a number of reference planes. I will have here external cell projection. I will then have a frame front and back. And then an internal sill projection. I will give them names. And then I can start to add some dimensions and create some parameters. I will tap over the wall to make sure I select the reference plane on the exterior face or the womb. Create some parameters for the external projection. The front offset, the frame depth, and the projection. I will firstly model B cell with a sweep. So I'll go to the exterior elevation, go to the Create tab, select solid sweep. I will set the work plane to be the reference plane frame. Click, Okay. I'll sketch the path. Use the PICC lines. Activate the lock 2, and then use the align tool to align the sketch line to the width reference planes. Like so. I can now finish the path. If I go into my 3D view, I've actually loaded in a profile family. Which if I select the profile here and click on the drop-down, I've created a profile sill family, which I need to rotate. Like. So. I'll now finish the sketch. I will select the geometry and change the subcategory to the built-in sill. At subcategory. I now need to associate the parameters within the profile family to the parameters within this window family. I've actually realized I need to flip the profile. So that is on the exterior side. If I go to the families section of the project browser and into profiles, this is the profile I have created. And if I select the type, I can right-click select type properties. And I can associate the relevant family premises. Frame depth already exists. So height, I will create a new parameter called external. And the sill depth needs to be a family parameter with a formula. So I'll create a parameter called sill, external depth. Click. Okay. And if I now go into my family types, I'll edit this parameter to be in the constraints grouping because it will be powered by a formula. So it's good to group it separately to use the editable dimensions. The external sale depth will be the frame that iframe, front offset plus the external projection. Click Okay. And I can now see that the cell has aligned itself to the correct reference planes based on the formula. If I update the dimensions. So the external projection, 250, a frame depth to 60 and the frame offset 80. And click Apply. I can see how the cell updates to suit. I can now draw the sweep for the frame of the window. However, I want to be able to have a user defined perimeter for whether this window has a not. So what I can do is go to the exterior. You create a reference plane. Create a dimension between the reference plane. And I will call this frame. I'll then create a parameter for frame offset. In order to be able to define whether I want this window to have an external so or not. I will select on the sill. In the visible property. I will select associate family perimeter. I will create a new parameter called has. So it must be a yes, no parameter t. So the tick box nature of the visible property. And I'm going to group this under the construction parameter group. And click Okay. Now because I'm in the exterior elevation, I can draw my frame as a sweep. So I'll go to the sweep to set the work plane to be the frame front. Making sure that I sketched the path. Use the PICC lines tool. And I met want to make sure that I select this frame lower reference plane. I can use the trim tool to close the sketch. Click the Finish Edit mode. And then in the floor plan, I can edit the profile just by drawing a sketch. Realize I need to create reference planes for the frame width. So what I'll do is I'll just create a simple rectangle. In the sweep. Finish the sweep. I will then draw a reference plane, creates a dimension, and then a parameter called frame width. Okay, I will make this 60. Select the sweep, change the subcategory to frame. Now I can edit the Sweep, selected the profile, select Edit Profile, and use the align tool to align to the appropriate reference planes. Making sure I select reference planes are not any geometry. I'll make this reference plane not a reference. If I now go into section, what I want to be able to define is that when the sill property or this is not required, this frame extends down to the base of the window opening. To do that, I go to the family types. In the frame, offset. In the formula, I can simply type f has sill. So if a cell is ticked, use the property external height defined up here. If not, then the value should be 0. Click Apply. So I can now see that the frame has extended down to meet the top of the cell. If I untick and click apply, the sow has grayed out to indicate that it will not be visible and the frame has extended to reach the bottom of the window. I can now move this frame level offset parameter into the constraints premise of grouping. Like so. Finally, I want to add some glazing. So I will select these reference planes. Select Copy, select multiple. And I will copy once, twice. I'll also copy a third time. Being careful not to select the center line reference plane for the wall. So I can select this and I can use the temporary hide isolate to hide the element. What I first need to do is create a reference plane to center this frame. So select two of the reference planes and the frame fronts and frame real quick. I'll just undo and move this reference plane up slightly. Now select. Now I will create another dimension to equalize the glazing thickness in the sense LP frame. You may have noticed that the frame depth updated. This sometimes happens when you equalize reference planes that are associated to other reference planes. I can simply go back into the frame depth parameter and change it back to 60. I'll now create an extrusion for the glazing. Pressing Tab to make sure I select on the correct reference planes. Again, I've not drawn a reference plane for the frame width on this side, so I will just create a single line. I will close the sketch. Fully glazing. Finish the sketch. I can now select the frame width, reference plane on dimension on the left. Use the mirror pic access to select this center reference plane. And it creates the same reference plane and dimension on the other side. So that's the glazing extrusion. Select the Align tool and align the glazing to the reference plane. I will now set the subcategory to be glass. I'll go to the exterior elevation. And because I drew the extrusion on the reference plane, I can change the work plane by selecting edit work plane. I can pick a plane. Click, Okay. I can then select the frame level offset. And again, I need to actually create additional reference planes fully. Frame width and elevation. I'll set these reference planes to not say reference. Set the premises to frame width. And now I can set the glazing extrusion to be hosted to the reference plane. And then I can use the align tool to align the glazing to the top frame. Like so. I will also create a reference plane for the heights of the dimension. I'll change the scale to create a dimension called internal height. Set the value to 12.5. And I can then create an extrusion using the PICC lines tool to lock it to the internal frame projection reference plane, the silane total height reference plane, and the frame internal lines on the bottom of the window. Set the sub cuts agreed to. And I can click and drag and then use the align tool to align the internal so to the edges of the window aisle now reset the temporary hide isolates. So here I have a basic window family. I will save this onto my desktop and call it window single Save. I will then load it into my project and place it in the hole here. Oh, something's not quite happened correctly. I think it's to do with the glazing. So I'll go back into the family and I need to actually specify a thickness for this glazing. So I'll create a dimension between the glazing external and internal reference planes. Creates a parameter called glazing thickness. Set to 24 millimeters. Save the family load into project. Overwrite the existing version and its parameter values. And I can see the glazing thickness is updated. Here. If I go to a 3D and I select the window, if I select Edit Type and untick the hustle. Click, Okay. And I can see that the cell has been removed on the frame extends down to the bottom of the window. If I go back into the family, I now want to be able to change the level of detail visible for the glazing, for the coarse, medium and fine detail levels. So similar to the door family, I can select the glazing, select visible settings, and tick ACP and when cut in plan or ACP. But I will maintain its detail level visibility in old detail levels. Click Okay. Then go to the annotate tab. Select symbolic line. Change the subcategory to glass cut. And just here I will just draw three lines. We'll use the align tool and select multiple alignment to align all three lines to the left of frame. And the same for the right frame. I'll select the upper and lower lines. Change the visibility settings to share in medium on fine, on also to only show if the instance is cut. And the center line, I will select visibility settings and really show up instances cut and set 2 course. Now use the align tool to align these lines to the glazing reference planes. And taking the multiple alignment tool, put it into the project. Select over right? Now if I change the view to course, I have a singular line for the glazing medium on fine. I have a double line. The final thing I'm going to do is go back to the family and set the frame, exterior and internal reference planes to be a wound closure. Load into project overwrite. I'll actually change in this type the frame fronts offset to a 120. Click, Okay. If I then edit the type of the wall, wrapping inserts to both. Click OK. I can now see that these finished layers wrap and finish the frame front and frame reference planes. And if I edit type, change the frame depth to, for example, 80. And the frame for an offset to 130. The external and internal wrapping layers amend to suit the new dimensions of the window. Slot is how you create a basic window family with some additional properties, such as being able to add and remove it from particular times. 46. 10.1 - Revit Massing Environment: The Revit muscling environment, both in place, massing in a Revit project and conceptual mass families. For early stage design and concept modelling. Masses can be created to explore early stage design ideas and then perform analysis on these schemes. Masses can also be used to host adaptive geometry in order to create more interesting and parametric building geometry. The methods and tools are a little more complex than the standard family editor. You will now be used to build on the principles learned throughout this course. There are two basic workflows for using Revit, conceptual masses. And in-place mass can neither be created and then developed in a project environment ieee dot py file and can be developed alongside existing project geometry. It is good for early-stage sketching and engineering. When using surrounding context. Conceptual mass families are modeled as a dots RFA family file and therefore can be saved out. They use the same modelling tools as the in-place massing. Multiple instances of a family can be placed around the site and can also be loaded into multiple projects. And having separate family files allows for easier management of parametric elements within the family environment. In this section, we'll be looking at creating conceptual mass families. Moving on to more complex pattern-based curtain panel families and adaptive components. 47. 10.2 - Create A Mass Family: To create a new mass family. I go to families, Mu Revit family. Navigate to the appropriate family. Templates folder. Select on the conceptual mass folder. Select Metric mass, and click Open. You will see how the environment is different to the standard Revit family editor. And also on the ribbon. The tools are somewhat different to what we are familiar with. Instead of the extrusion, sweep, blend tools, et cetera. In the Create tab, I have a number of different tools to assist in creating more complex geometry. I still have a typical floor plan, north, south, east, west elevations rather than front, back, left and right. Because this is useful building scale modelling rather than individual building component modelling. In this lecture, I'll just be exploring some basic strategies for creating mass geometry within this 3D view. I want it to be creating any parameters are such. It will just be an exploration of geometry. The basis of creating geometry, using modal lines. Lines are then used to create the 3D geometry. I'll select model line. It's then very important that I'm sure I select the correct work plane that I want to work in. I can do that using the set Work Plane Tool on the ribbon here for choosing the relevant placement plane. From the drop-down list on the options bar. I can either choose to draw on a face. So I can draw lines on an existing surface, or I can draw on a work plane, which draws on the work plane. So I will select drone work plane and select Level 1. I'm going to draw a simple rectangle. And you can see that the work plane that I'm going to be drawing the rectangle and modal lines in is highlighted. I'm going to start in the center and then create a rectangle like so. Notice the temporary dimensions at quite a large scale. Again, indicating that this family is to be used for building scale modelling. I'll click again to create this rectangle of modal lines. If I now hover over one of the lines, read it automatically selects the chain of lines that are formed by the full model lines. I can press the Tab. Button on the keyboard to select an individual line if I wish. But by default, it selects all full lines. Once the lines are selected, I can then use this create form tool to create a solid or a void full. Because of the arrangements of the modal lines, red, it automatically can guess what type of geometry I want to create. So if I click create solid form, revit has created an extrusion because it has seen that these full lines at the bottom are going to be extruded up. And that is the most likely shape I want to create. So here I can see that I have created a cube by hovering over particular elements, or by pressing the Tab button, I can select either the entire geometry, a particular face, a particular line, or an edge. Upon selecting one of these elements, I have three arrows that I can use to amend and change the geometry of this cube. Like so. I hover over an edge and pull the edge that pulls the edge like so. So this allows for very flexible geometry formation and it can create curved surfaces easily. I can now use this form to add additional geometry to either solid or void. I'm now going to set my work plane to this face here. Note that if I tried to hover over a curved surface and press Tab, I cannot select a curve surface, so it must be a flat surface to act as the work plane. If I then click on the rectangular model line, again, it is showing me the work plane I have selected. And I'm going to create a rectangle like so. I can select this rectangle or the chain of lines forming the rectangle. If I click Create form and then void form, I can then drag the void all the way through. And if I right-click and counsel, the void has automatically been cut out of this solid geometry. I can now select individual faces inside here and amend by dragging like so. Or I can select individual lines and drag them up and down like so. The geometry times I have just created are effectively extrusions. However, it is also possible to create the other geometry types, such as it sweeps and blends. I'm going to draw a model line, circle on level one. And I'm going to draw it down here by selecting this multiple line. And then the edges of this solid geometry. Using the Control button on the keyboard to select the edges. I have effectively selected the components to make a sweep. I have the profile here, and then the path, which is the edges of the solid form. If I then click Create solid form, I can see that the circular profile has been dropped around the edge to create a sweep. If I change this visual style to wireframe, I can then select the point of the solid form. I can then drag this solid form geometry and the sweep updates to suit because it is hosted on the edge of the geometry. I'll go back to the shaded view. I'll then select the model line to draw an individual line. I will set the work plane to be the interface of this void. And I will create a shape. In 3D. I can see how the lines do not intersect or creates a closed loop. So I'll use the trim tool. To close this sketch. I will then create another closed loop model line boundary on this face. Here. I can then select this chain of modal lines. On this channel model lines, I can then create foam and then effectively creates a blend of these two shapes. I can then select each of these lines and then adjust as required. I can then use the join tool to join this geometry to the solid geometry to create one. Mass. Like so. Modal lines are used to create the geometry. I also have the option to draw reference lines, which can be used as a method of hosting geometry and all constraints. I'm going to create a reference line on level one. And I will use the spline tool, which if I click my mouse button, will create a reference line with points through it's where I selected. I can then select the reference lines, all the points on the reference lines, and adjust them. And the spline will update like so. I can then use these reference points to host model line geometry. So if I create a circle and then sent to the work plane, I can hover over the point at the end of the reference line. Select. I can then draw a circle. I can then draw an ellipse set and select the other reference point. And then I'll draw two more circles on the reference points. The other end of the reference line. If I now select the full model lines and the reference line, click Create form. Rivets automatically creates a solid form. By sweeping the full profiles together along the reference line path. I can then select one of the nodes are points along the reference line. Use the drug arrows and the geometry adjusts to suit the new path of the reference line. So I've effectively created a swept Blend, but with multiple profiles rather than just the two available in the standard family environment. I have now created a new mass. I will go to the level one floor plan. I will create a reference plane using the reference plane tool on the ribbon. Underneath the reference lines. I'll set an offset of ten meters. And I will copy. To make for reference planes including the center, left and right reference planes. I will get these new reference planes names. I will call this T2 345 and go into my west elevation. I'm going to create some lines. I'll use the spline through points. I'll firstly choose the left, right reference plane. And I will draw six points. I'll then select reference plane two and draw six more points. I'll then select reference plane 36 more points. And then finally reference plane full. Note that if I accidentally select a point of a model line, as I did here and go to my 3D view. I can see how this last line I drew is not drawn on the reference photo, reference plane, but it is ultimately snapped to the point on the line drawn on the reference to reference plane. So this is just always to be aware of how sensitive the drawing geometry is in the massing environment. I will create the final piece of geometry again. I now have four splines. I can now select these full spines. Quick, Create form. And then now it gets a shape. I've created a surface from those four lines. I can then select this surface. Use the X-ray tube to display the geometric skeleton. I could then select one of these points. And just the location using the arrows. And the surface form will update to suit this updated skeleton. Press Tab to select the geometry again and untick X-ray. I didn't get the solid surface visible. Again. I can load this into a rabbit and project. I get a notification saying that it's red. It has enabled the show mass. So the newly-created master will be visible. Quick close. I can then place this in the model. I can then go to the massing on site. Select roof by face. Select the root type. However, because this is a complicated shape, the roof by face will not allow me to select this surface. So instead I can use the face. Select a wall. I'll just use the interior 100 millimeter book work. Select the surface. And I can see that a will has been drawn attached to the surface of this mass. If I change the view settings for the mass to show mass by view settings, it is turned off. And if I zoom in, I can see this rule has been created. Here. I can change the type to show a masonry pattern just to show how the pattern is displayed on this wall. If I then go back to the family, select the shape, select x-ray. And if I just adjust some of these points. So load it back into the project. Overwrite. Show the mass. I can see how the mass is different to the wall. I can select the wall that is hosted to the face, select update to face the wall updates to suit the new surface of the mass. So that completes this introduction to the massing environment and how to create geometry, or more complicated geometry for your building forms. In the next lecture, we'll look at creating a mass family for use in early stage block diagrams and building massing. 48. 10.3 - Masses For Feasibility Studies: I'm now going to create a parametric mass family that's I can load into a project place multiple times together to explore massing for my building. I will create a new conceptual mass family. I will go into the floor plan and draw some reference planes to set out the geometry. For my mass. I will make these in much the same way that I did in the normal family editor. Create some dimensions. The dimensions, and create some instance premises. I have width and depth. Hey them a bit smaller. Again, notice the scale of the geometry is a lot larger. To account for building scale geometry. I'll go into the south elevation and create a reference plane for the height. And creates a dimension to the level. Again, creating an instance for the height. If I now go back into my 3D view, I can see the newly created reference planes in 3D and also the associated dimensions with parameters. I'll now go back into the floor plan. And I will create a rectangle of modal lines and show the placement plane is level 1. And lock the model lines. I'll then go back to my 3D. Select the chain of modal lines, and click create solid form. Like so. I'm now going to flex the parameters to make sure they are still working. So I can select the parameter in 3D and I will change to 25 meters. What you'll notice is that the top profile, now it does not match the bottom profile. This is the nature of mass families where each face and online can be controlled independently. To get around that, I will undo the edit dimension length. And if I hover over the solid form and press the top button to select the entire form. I can then select the lock profiles in the Modify tab of the ribbon. This will now look at the profiles of the top and the bottom of the solid form. So that when I now adjust the width parameter and the depth, the cube maintains its rectangular profile. I'll just go and use the align tool to align this geometry, making sure. Notice in the bottom left I'm hovering over the surface of the form. And if I now go back into my 3D view and the height, the form updates. So this is my very basic rectangular mass family. I will now save this family and call it mass tangled. I can then load it into a newly created Project. Enable the show must mode. I can then place an instance in the project. And using the track arrows to adjust the size. Additionally, adjusting the size using the dimensions parameters created. I can also go into 3D and I can see it's in 3D. And I can also place another instance of the component overlapping, like so. And I can amend the height of this block to say 50 meters. And change the size and location. So they are overlapping. So here I have a very basic outline for my building. In my south elevation. I'm now just going to grow and create a number of new levels. And I'll adjust the height. The mass is slightly. I will select the total mass and place a comment. And call this hotel because this will be the hotel parts of my building. And I will create, will add the comment commercial into the smaller parts of the building. Go back to my 3D view. I can now select on this tool master instance open family here, and select mass flows. And I can assign that mass flows to all the relevant levels. And I can do the same for the smaller commercial level on any select up to level four, level five. Like so. However, these flows are overlapping. So I'm going to use the join tool to join the two masses together. So I can see here that the mass flows for the hotel are being cutouts off the commercial flows. I could switch the join order by selecting the switch join 0 to 2 and then selecting the two masses. If I wished the hotel mass To continue the same profile all the way down. So here I've created a basic building massing shape. I can now create a new schedule to schedule out the areas of each of these muscles to give me a total area of the building. So I'll create a new schedule under the mass category. Select mass flow. Click, Okay. I will ask the level value, the floor area, and then I can add the comments of the mass. The mass flow is associated to like. So I can then sought by the mass comments. And then by the level, I can add a header and a footer. And then a grand totals. I can calculate totals for the flow area and then hide the comments. Click Okay. And now I have a schedule indicating the amount of flow area for each mass flow on each level, for each different mass comments or function of the building. So this is just a demonstration of how we can use mass families to do some initial feasibility study. Options for particular buildings and assign different functions or categories to the masses as appropriate for the project. 49. 10.4 - Pattern Based Family - Part 1: In this lecture, I'll be going to use the techniques learned in the first few lectures to create a pattern based curtain panel family to apply to this tensile structure shape that I created in a previous lecture. Pattern-based curtain panel families are families that aren't created and then nested into larger conceptual mass families, such as this family. Here. They are able to be placed on a divided or pattern surface to create complex building components. So I will start by going to File new family. In my family templates folder. I will select Metric, curtain panel, pattern based. Click Open. I'm then presented with a 3D view showing a pattern in blue with some points and reference lines between them. If I select on the edge of the pattern grid, I can select this pattern grid. And in the type selector, I can change the shape to suit the design that I'm trying to create. For example, if I change to octagon and then present it with eight points and eight reference lines between them. So choose the pattern that you wish to use as a basis for the components you are trying to create. I will stick to rectangle. For the time being. I can set a horizontal and vertical spacing to suit the scale of my component if required. The first thing I'm going to do is create a tube between points 2 and 4. So I can create a reference line. And I want to make sure I select 3D snapping. So it snaps to the points here. So I'm going to draw a line and I will select points for. And I'm then going to draw a multiple line circle. And I will set the work plane to be the end of the reference line by hovering over the point, pressing Tab until I select the end of the reference line plane. Here. I will then draw a circle, creates a dimension. And I will. Creates a parameter called cross tube. Radius. Sucks. Okay. I'll just change the scale of this view to one to 25. Then select the middle line and the reference line. Click Create form. To create an extrusion along the reference line. I'm now going to test that this parameter works correctly. And I will change this value to 200. But as you can see, only this edge of the geometry changes. So to solve that, I need to select the entire geometry, select Lock profiles. You'll see that the dimension has disappeared. So what I need to do is go to Edit Profile, select one of the profile lines, make it a permanent dimension. Select the dimension and then assign it the cross tube radius, perimeter. Go back to the edit profile. Finish edit mode. And now the entire geometry is the same radius. Again, I can flex the primates to confirm. That is now working correctly. I now want to create some tubes that span between points 1 and 423. However, I want them to be set lower so that they do not clash with this cross tube. Yeah. So in order to do that, I first need to place some points that I can use, either a reference to create the geometry. So I will select the element. I will then set the work plane. And I will set the work plane for the first to be on the horizontal point of this 0.1. I'll then place the point. So we now have two points overlapping. But if I select this reference point, I can see it has a number of parameters, including driven by host, which means it will be driven by the host point. And I can set an offset. So I can now associate a new family parameter to this offset. And I'll call this lower tube offset. Quick. Okay. Ok, again. Now if I go to the family types, I can set this lower tube offset to minus 300. Could apply. On this point has now been moved 300 millimeters below its host point. I now need to create three more points associated to each individual adoptive point here. So I'll do the same thing. Select a point, set the work plane, select the horizontal plane off the point. I can see here is highlighting the edge of this geometry as the plane. So actually, I'm going to tap to select this entire geometry. And I hide the element. So it's clear what I'm selecting on placing the points on set, slit, the reference plane, place the point. I can then go and do the same for all the other points. To make sure I'm selecting the reference point. And I can set the offset to be the lower tube offset. And then I will load. I now need to draw to reference lines between these new points. Ensuring 3D snapping is ticked, I would untick chain creates a reference line between these points. And then between these points. I can now create the circle. Set the work plane to be the reference point, O, the GOP reference line. And then create a circle. Select a reference line on the circle. Create form. Making sure that I then select the geometry, select profiles, edit the profile, and then create a dimension. And a new. Parameter called this radius. Click Okay, and then finish with just the radius to check is working which it is. And I can then go and do the same. On the reference line. I can associate this dimension to the lower tube radius parameter that is already been created. Now if I isolate or reset the temporary hide isolates, I can see the larger send a tube and the smaller edge tubes. I now want to create a finished tube above this cross tube. So I'll again select this geometry and temporarily hide this geometry. I will create two more points and set the work plane to be the adopted points. Four points to unfold. I can then select these points and give them an offset, parameter, tube offset. And then create a positive value of 500 millimeters. Create a reference line between these two points. And then create a tube. Remembering to lock profiles and then if necessary, edit the profile and recreate the dimension and associate to the new perimeter. Can now update this upper tube parameter. So now I have the full main tubes for my pets and based component. Before I go any further, I'm going to save this family to make sure I don't lose any changes that I've made. I'm just save it onto my desktop and call this ten style. I'll click Save. I can now select all this geometry and assign a material parameter. So I now want to add a number of vertical supports between this tube and this larger center. Here. To do that, we will create some adaptive components. 50. 10.5 - Adaptive Component - Part 1: Adaptive components are components that adapt to unique contextual conditions. They are an adaptation of the pepsin based codes and panel families and use adaptive points to snap the component. Two other pieces of geometry, including pattern panel families of the adaptive component families, conceptual mass families, and also elements in Revit Projects. I'm going to create a simple adaptive component and load it into this tensile panel family. I go to File new family. And the family templates. I select generic model adaptive. And click open. In order for an adaptive component to be influenced by another element, it needs to contain points. So firstly, I need to create two points for the start and end of my tube for the tense our family. I therefore select the model line point. And I can simply place two points anywhere inside this family. If I select on one of these, these are reference points. Therefore, in order to make this an adaptive components, i2 change the reference points to adaptive points. I can do that by selecting the reference point and selecting the make adaptive tool on the ribbon. I can do the same for the second reference point. Like so. As you can see, these are now adaptive points. I can choose whether to show the reference planes. Either always when selected or never. The number indicates the order in which these points get placed. When I place this element into another family or project. So the first click will place, the second click will place 0.2. I'm now going to draw a simple reference line between these two points. And as I've done in the previous lecture, I will create a simple model line circle, making sure that I set the work plane to the reference line. And like so, selecting the draw on Work Plane Tool to ensure this doesn't change. Drawing a circle. And then creating a solid form, blocking the profiles. Editing the profiles, and then creating a radius parameter. Okay? And then Finish edit mode. And I will reduce this perimeter around 250 centimeters. If I now select one of these adaptive points and use the arrows to move the point. Can see how the geometry adjust as I move these adaptive points. So it's always good to test and move these points before loading it into another project to ensure that the geometry behaves as expected. I will also tap to select the solid geometry. Associate a material parameter. So I can now save this family. Call it tensile. Rod. Click, Save. And I will load into projects on clothes and shoes, my 10 style panel family. As you can see, it automatically wants to start placing the family, but I will counsel. I want to place these rods at various places along the length of this tube. I'm going to hide this tube geometry and temporarily hide the elements. I now want to select this reference line. And I want to chop this reference line up into segments where I can place these adaptive component rod families. To do that, I select the reference line and I select the divine path tool on the ribbon. This have now created individual points along this reference line. With a new element called the divided path. I can change the layout to suit. I can have a fixed number of fixed distance and minimum distance, or a maximum distance. I'll keep the fixed number 6. I can change the measurement time to code length of segment length. I can show the node numbers if I wished. And I can also change the effective off set for the beginning and the end, which I will do here. So if I select 300, told the beginning, and click apply. The first is offset 300 from the beginning. And if I do the end indent, it is 300 from the end. I can then do the same with the lower reference line and set the same properties. I want these rods to span between each of these sets of vertical points. So to place a component, I go to Create Component. I can then select the tensile rod. And then I can hover over one of the points until it snaps onto the point. And then I can select the second and snap. And it has placed the adaptive component on those two points. If I were to now change the path and change the beginning indent to say 500. Because the adaptive component is snapped to that first, it adjusts with the divided. I could then go ahead and add individual components to these points. However, alternatively, because it is a repeating element, I can select the road family. And in the modify panel on the Modify tab, I can select this repeat tool. And this will repeat this component along the path. Like so. I can then select tab to select an individual repeated component. And I could flip it if it weren't symmetrical, orientated correctly. I'll just go to the families generic models, tensile rod and I'll just right-click type prophecy. Notice that I cannot associate any of these materials dimensional parameters to a family parameter in this panel family. If I click Okay and right-click on the tensile rod and edit. I can see that it is been shared by default. I've F01 to untick this shed family. I need to first go back into the 10 style panel family. Right-click on the tensile rod and rename the family. I often rename it to simply go back into the royal family. Load the not shared version into this project panel family. And I will save the changes. I can now change this repeated element to the new family. And then right-click on the family for the old 10 solid wrote in the Project Browser and delete. I can now select either the repeater element and select Edit Type. And I can now associate the parameters across prison, you parents are fully wrote a radius and assign the structure material to the already existing structure material. In this family. I'll now change this radius to 20 millimeters. Mike. So if reset temporary hide isolates. I can now see I have these rods between these tubes here. Now that I've created a basic generic model, adopted components, It's time to complete this pattern based curtain panel family. 51. 10.6 - Pattern Based Family - Part 2: I'm nearly ready to complete this coats and panel family on place it on the tensile S family. However, it firstly, I need to create a surface for the actual tensile structure. So to do that, I will hide all of this geometry in the center here. And now she will create four new points. On each of the adaptive points, the full points, and creates a new offset, perimeter, surface offset. Okay? Okay, again, and set this property oh, parameter to 700 millimeters. So that's okay. I'm now going to draw for reference lines between these points. I now want to be able to create a point along the center of this rectangle. So what I can do is create a point. But if I hover over the reference line, the point will automatically snap to this reference line. And I can then place a point. Notice how it is smaller than the typical reference points because it is hosted on this reference line. If I then select this reference point, I can then change how this reference point sits along this reference line. If it is the normalized curve parameter, I can change the normalised curve parameter value to a value between 01 depending on the percentage along the line I wish it to sit. For example, if I change it to 0.25 and have the measure from parameter set to beginning. I click apply. This point will always maintain a position of 25 percent along. The length of this reference line from the beginning of the reference line. Therefore, if I want it to be centered, I simply set the normalised curve parameter value to nought 0.5. There are other options as well, such as the segment length, normalized segment length, and the chord length that I can use to specify the location of the point. But I'm happy to keep it up No.5, fully normalized curve parameter. I will then do the same on this reference line here. And if I select the midpoint and select the point, I can see that it is already set at No.5 of the normalised curve parameter. I can now draw a reference line between these two points. I can then add another point along the center of this reference line. Check that the point is set to 0.5 of the normalised curve parameter. So this is now the center of this entire component. Along this reference line. I can then create another point element. Set this point on the horizontal plane of this reference point. I guess a warning saying there are identical points in the same place. That's okay. Counsel, I can now set this newly created reference point to be offset by the same amount as the reference points are on the edge. Like so. I can now create a new reference line using the Start, End radius. Ok. Select this center reference line and then select the center to be the new point. So to now create the shape of my surface, I can select this reference line, the singular code reference line, and this reference line. On the other end. Select Create form. And I now have a surface like so. I can then select the surface and give it a material. And create a new material parameter called surface material. Click Okay, and, Okay. And if I then reset temporary hide isolates, I can now see my cousin panel based family in full. I can now save this family. And I'm now going to load it into the tensile structure family here. Before I can apply it to this mass, I need to create a divided surface. So I shall hover over the form and press Tab to select the entire form. In the modify panel, I then select divide surface. This then creates a divided grid or divided surface. I can choose whether to have a U and V grid. So I can remove the grid or I could remove the grid depending on the design I'm looking for. I can then change the layout of the grid and associate relevant parameters if required. For the purposes of this lecture, I will simply change the grid fixed number value to six and the V grit number 15. I'm now ready to place this curtain panel family onto this divided surface. To do that, I simply select on the type selector, which currently has no pattern selected. And because I know that I created a rectangular pattern based curtain panel, I go down to the rectangular family and choose the tensile panel family from underneath the rectangular family. Because I've created quite a complex component and the surface is quite complex. Revit will take a while to calculate the positioning of these components. So I will speed up this part of the video. And there we go. I have a arrangements of these individual curtain panel families that I created. I can now go to File New Project. Create a new project from the appropriate template. Go back to the tensile structure family. So that is enabling the mass mode. Click Close. I can then place this component in my project. I can see the family has been placed. If I go to my default 3D view, I can see the component unmask family has been placed here. I can select on one LP tensile panel families. Select Edit time. I could apply a surface material. I will use class for now. Just to indicate transparency. I will choose stainless steel. Click Okay. And Okay. And here we have the updated materials indicating the clear glass surface with the structure below. And here is an individual components adjusted to suit the intersections of the divided surface within the family. Because this is now in the project environment. I can schedule these individual components. And I can also start building additional building geometry around this structure to start documenting this building. So that completes this section on pattern-based Kurtz and panel families. In addition to creating a basic adaptive component. In the next lecture, we'll look at creating an additional type of adaptive components with more advanced functionality. 52. 10.7 - Adaptive Component - Part 2: In this lecture, we'll be looking at creating an adaptive component where the geometry adjusts to suit conditions within this mass concept family. Here. Firstly, we'll tell do is select this solid form. And I will create a divided surface like so. And I will set the grid to be 50 and the V grit to be 15 to create a divided surface. Like so. I'm now going to place two points on that level, 0, 0, 1. And I'm going to use these points to control the geometry of the adaptive components. The I will be placing on this divided surface. Firstly, I will create a new adaptive component family. So file new family and select generic model. Adaptive. Click open. Like so. Because mine divided surface is a rectangular surface or it has no pattern. But the default is a u and v grid. Creating rectangular surfaces. I need to create full points in my adaptive component family. So I go to create a point element. And I can simply place full points on level 1, like so. I now need to make these points adaptive so I can place them on the corners of the divided surface. So I will select these four points and make them adaptive. I'll check that the sequence is correct. So 1234, I wouldn't want them going, for example, 123 full as that might cause problems when I place the components, I want to be able to select each corner sequentially. I will now create a line connecting the points together. I'll click 3D snapping. And I can now create. These points, these lines here. Although I've actually realized I won't need to be reference lines. So I can actually select these full modal lines that I drew. And in the Properties I can select is reference line is the same as creating a reference line using this reference line tool. On the ribbon. Here. I'll select one of the adaptive components. I'll just move up and down to make sure that the reference lines are adjusting. When I adjust this component. All looks good. And now I want to create a simple surface from these reference lines. So I can select a chain of reference lines and click Create form. And I get an option to choose either a cube or a surface because Revit does not know which of these forms I wish to create. I will click surface, like so. So I now have a surface that adjusts. Whenever I move the adaptive points. I now want to create an opening in the surface that reacts to the distance when placed on the two points in this mass family. This point here and this point here. If I go back into the family, I firstly need to find the center of this surface so that the opening is always located in the center of this surface. I select the points element. Make sure that I've selected the draw on face. And if I hover over the surface, I can see how it's highlighted in blue. And I can simply place a point on the surface like so. If I then adjust, say adaptive 0.2, I can see how the point is always fixed to the surface and changes as the adaptive change. To fix this point in the center, I select the point. And if I look in the Properties, I can see there is a hosted you parameter and hosted v parameter. This works very much the same way if I was a place a point along a reference line along the normalised curve, I can actually set this to be 0.5. For both the hosted u and v parameters. And this means that it will always be 50 percent from the U and V grid of this surface. So if I now adjust these points, this will always be in the centre of the surface. So I can now use this point to host a void geometry. To do that, what I'll do is create a new adaptive component family. I will make sure it is not shared because I do not want this to be a separate component. I will create a point element. I'll then select this point and make this point adaptive. I will then select the circle tool. Set the work plane to be the horizontal plane OP adoptive point. Make sure I set draw on work plane. To be sure I'm drawing it on the work plane. Creates a circle, creates a permanent dimension. And then give this a parameter called void radius. I'll make this an instance parameter. And click Okay. I'll reduce this down to 500. Now that I've created this model line, I do not need to create any further geometry. What I can do is load into projects on close. I'll load it into family one. I will not save the changes to family to family two is inside this family, I can actually place it on the reference points. And this point and component is now hosted to the reference points. On the move F will always remain in the center of the surface here. Because I didn't save this family. I need to rename it so I can expand on the family's section of the project browser. Go to generic models. Right-click to rename the family employed. Circle. And I can also rename the type void circle as well. For consistency. It's not essential to rename the families, but it is good practice. I can now select this void to circle element. And I can actually create a void form from this component. And I will choose this extrusion form here. And I will zoom in to load this void slightly. Set the height to 200. I then need to select the underside of the void to extend below the surface. To do that, I will select the void, a circle generic model, and temporarily hide the element. And now I can select the underside of the void, setup as 400 millimeters from the top. I'll now reset temporary hide eyesight. And I can now use the Cut tool to cut the void out of the solid. If I select the void is circle generic model and I change the radius. I can see how the void updates to suit. And if I change the adaptive points, the void adjusts to maintain fixed onto the surface. Like so. Now that I've created the basic geometry, I want to set this opening size to be dependent on its distance from either of these two points. To do that, I need to create two more adaptive points. In this family. I will create two more elements. I'll then select them and make them adaptive. And what I will do is move them so that they are above this surface. Here. I now need to calculate a distance from this surface to each of these points. So what I'll do is draw a reference line using 3D snapping from 0.1 to six and then to three. And then from one to five to three. I then want to calculate the average distance between these two points. So what I can do is create a dimension. And I must set the work plane of this dimension to be on the reference line. So that when the angle and location changes, the dimension line maintains its relationship along this reference line. I then need to make sure I select the adaptive points when drawing the dimension. So in the bottom left I can see how it says joined solid geometry. I need to press the Tab button until I select the adaptive point. I now can create a parameter from this dimension. However, I do not want it to be a parameter that is defined by an input that I put in. I wanted to basically the length of this reference line. So what I do is I create a new parameter. We'll call this 0.1. Length one sets as an instance perimeter, but then I will set it as a reporting perimeter, which is a parameter that can be used to extract value from a geometric condition and reports it's in a formula. So I click, Okay. I'll then do the same on the other the reference line, remembering to set the work plane before placing the dimension and making sure that I select the adaptive point. I'll then create another reporting parameter called 0.1. Length. Two, sets it as instance and reporting. Click. Okay. And now I have two reporting parameters. And when I move this point, these two parameters updates. And I can see the dimension maintains its relationship an angle to the two reference lines. To create a parameter for the average. Of these two, I can go to family types. I will create a new parameter. Call this 0.1. Average. Says as an instance parameter, make sure it is a length parameter. And I do not want it to be reporting. Click, Okay. And I will set the formula 0.1, length one plus 0.1 length 2 divided by 2, putting the first part in brackets. So I add the 2 links together and then divide by two. So that gives me an average point length. I now need to do the same on the 0.5 placement point. So I will draw a dimension, set the work plane, select the adopted points. Just to demonstrate, I will place this dimension segment end on the solid joined geometry. I'll then place another dimension. And this time I will select the adaptive point. On adapt to 0.3. I will create this as length as an instance perimeter length 2. And this one here, 0.2. Like so. Well, so do is swap these adopted points around. So that point too equals 6. So I can select the adopted point and change the number to six. And it automatically swaps the adaptive 0.25 onsets this 0.26. If I now go to my family types, I need to make this an instance parameter, a reporting parameter, rather 4.2 length one. And if I now creates a point to average. If I'm trying to type the formula point to length one plus 0.2, length two divided by two. I get a warning saying a reporting parameters. And it can be used in a formula only if its dimension references are old to host elements. I will just right-click and copy the text and then delete the formula. If you remember, I joined this dimension to the joint geometry rather than the adaptive point down here. If I then redo this dimension, setting the work plane, and making sure I select the adaptive point rather than the geometry. I can select this dimension. And from the drop-down, because the 0.2 length two is available to select as a reporting property or parameter. I can select from this drop-down. Now when I go back to the family types and I paste the formula, the formula now works correctly because the 0.2 length two reporting parameter is associated to a adoptive point, which is a host element within this family. Now that I've got these two points, I want to associate this radius of this circle. The lengths between these two points. First, I need to associate the void radius parameter from the nested family. So I'll create a parameter called void radius. Set it to the instance. Okay? What I want to do is I want this radius to be a proportion of the smallest distance between either 5.60. Therefore, I can go into my family types. And any void radius formula. I can type in a formula f point to one. Average is less than 0.2 comma. Use the formula. Average divided by 20. If not used the two average divided by 20. Close brackets. What this formula means is that of whichever of the distances between 56 is less, use the formula to drive the width of this void opening. So for example, if this adaptive component five is placed along way over here, the void radius is now dependent on 0.6 because that's the closest point, Alto points 56. I'm now ready to load this family into the mass family. Here. What I'll do is I'll firstly save this file or family. And I will call it surface void. And I will now load it into the family. Before I place it. There are a few things that I need to do. Firstly, on the divided surface, in order to place this component on the corners of these divided surfaces, I need to change the surface representation of the surface. I can click on the display properties arrow to the right of the surface representation. And the need to make sure that I select the nodes from the surface. You can see that the nodes of the intersections have all appeared. Here. I can then click Okay. I'll now go to the Create tab. Select component. Using the place on face are now need to select the four corners of each square within this divided surface. So these are the four that forms the geometry. I now need to select the two points, which are equivalent to the points 56 in the family. Like so. So now what you'll see is if I move this point, select tab to select the reference point. If I move this point in this family, the size of this opening adjusts. If I tried to move this reference point, the dimensional the opening does not change because this point here is the driving point, because it is closest to this component. In order to now cover the entire surface. With this component, I select the surface component. And then in the Modify tab, I select the repeat to. The component has now been repeated across the entire of this divided surface. If I now select this reference point and drag the reference point, I can see that the size of the openings have amended due to the relationship between the location of the individual component and this reference point. So this is how we can use adaptive components to attach to other pieces of geometry to affect their geometrical properties. I could then load this into a project to place within my building model as required. I'll just move this again. Just to show a further example on a wider scale. Note that this does take quite a lot of computational power, and I've sped up the load times for these updates. Purchasing power of the machine that I'm working on. So note that adaptive components do require additional time and computational power in order to work efficiently. But I hope that's given you a good understanding of how you can use pattern-based families and adaptive components to create more flexible and responsive geometry. 53. 11.1 - Summary and Thank You: That completes the course, Revit Architecture and ultimate guide. Thanks for watching the entirety of this course. And I hope that it has been beneficial and that you have learned something new. Whether you were a beginner, just starting out in your Revit journey, or an advanced user looking to improve your skills. A quick summary of what we have been through. We looked at the concepts of bin and Revit and how they interlink. We started a new project, setting up levels and grids. We navigated the model using the different view types and amending the view types to show particular graphics. We modeled the core basic elements, sets up the project settings, data, and materials. Embellished our model views with tags and details to show additional construction level information. We then created and printed sheets to send to external parties and our client. We sets up the model for team collaboration and also used design options and phasing. Future topics to be included in this course include linking different file types and Revit models. Setting up the project location and coordinates. Exporting alternative file types. Keeping healthy Revit models and much more. So, thank you for taking part. And any questions or suggestions please ask in the Q and a forum. 54. BONUS - 2021 Updates: In this lecture, we're going to cover the main updates that were featured in the release of a Revit 2021. Now there are two main features that we'll discuss in this lecture. The first feature relates to tax. You can see here I've got a simple layout with some walls, doors and windows, with some tanks as well. Tagging the window, mock the wildtype, mock on the door, mock, find, edit this family, attack family. You can see that there is a property called rotate with component. If I tick that and then load this family back into the project and overwrite. You'll see that this tag is now rotated to align the orientation of the door component. If I were to select this wall and drag the end down, you can see how the rotation of the tag matches. Obviously, I need to align it again to make it 90 degrees and perpendicular with the leader. Now this feature has been around in previous versions. However, it is important to know that for the 2021 update is that this ability to rotate with component has been added. Two additional family tanks, including specialty equipment, massing, models, and furniture. Further information on this feature can be found on the Autodesk knowledge network under the page rotate tag with component. If I scroll down, this gives me a description of the functionality and a list of the categories that respond to the Rotate tag with component parameter setting. The second major feature to have been added to the functionality for Revit 2021 is the ability to choose whether a piece of voided geometry cuts solid geometry. If I click on this solid lego piece of geometry in this desk family, you see, and we'll know from previous lectures that it has a property called visible, which you can then turn on and off or associate to a family premises. However, in previous versions of Verbit prior to 2021, void geometry did not have this feature or functionality. So if I want to now, crusade cooked some holes in this length to have two options as to whether the leg is framed or solid. What I can simply do is go to a left elevation, go to the Create tab. Click on Void Extrusion. I can then create a rectangle. And I will look at the sketch lines. So the reference planes. I'll go to my friend's elevation. Drag the extents of this void geometry to the left and right. Most reference plane. Go back to my 3D view. And I can then cut the geometry of these legs. Then if I select the void geometry, you can see that it has a, now has a cuts geometry property. So I can then associate this to a family parameter, which I'm going to create a new one called framed legs instance parameter. It could be, it could be type. If the purpose of this demonstration, I'll make it instance. Okay? Okay. I'll then let this family into a project, place, an instance. And if I go to the 3D, zoom in, you'll see that I have a framed legs, primates. And now here that I defined in the family editor, I, if I untick framed legs, you see how the voice geometry, it does not now cut the solid geometry. So this is an incredibly powerful new feature. And if you're interested in the workaround, because you are still working in versions of Verbit prior to 2021. Please continue listening to this video. Otherwise, that completes the update is for 2021. Back in the family editor. If you're working in previous versions other than 2021, what you would have to do to create a void that you could turn on and off whether it cut geometry is, I would create a couple of reference planes outside of the main geometry for the desk. So say him. I'll then add a dimension to the outermost reference plane, to the width of the desk. And I'll just change this to a 100 millimeters. Lock that reference plane. I will then add another dimension between the two reference planes. And I will give this a parameter called void length, omega and instance parameter. I'll go to my left elevation and I will create not void geometry. Go back to my front elevation. I then need to click and drag to snap the void geometry to eat both of these reference planes outside of the main geometry of the desk. I then need to go to my family types. And he's out a formula into the void length. And this formula will read if framed legs. So if framed legs is ticked, yes. So get bigger. Then the void length should be the width of the desk plus the 100 millimeters that we defined as the offset. So plus 100 millimeters. If not, then it should be 20 millimeters, which means that it'll only the distance between the two reference planes will then expand a little bit on the void will be outside of the main geometry of the desk. If I click Okay, you can see now how the reference plane has extended. If I go to my 3D view, the void is still not cutting. However, I just click Cut and then select the two pieces of geometry and then the void. If I then because my family types and I untick frame legs, you see how the void length changes to 20 millimeters. Click Apply, and the void is now outside of the main geometry. If I load this into a project place, an instance goes my 3D view. You see, you cannot see the orange void that you could see in the family editor mode. And if I click framed legs, you see how it now cuts the geometry. So this was the workaround for allowing you to select whether geometry cut, whether void geometry, solid geometry, inversions previous derivate 21. So I hope that's useful. There are of course, other alternatives such as creating nested families with two different options. One with a framed leg on one with a solid leg, and using family type parameters or visibility parameters to swap the two out. So there are multiple ways of doing it. However, this was just to demonstrate a one particular workflow.