Title of this video is Planes Lesson. From working with Rhinoceros, you know and probably understand the importance of the CPlane. It's on the CPlane that we create all our geometry and understanding the different tools that you use to move the CPlane around in that space is critical to creating geometry. Because on that surface is where we can draw, create all of our elements, parts, curves, it's also the surface from which we extrude things. We can also use those CPlane tools to relocate the CPlane to different positions in space if I wanted to construct something on a different surface. Planes hold the same importance in encoding, and we're going to look at two different methods of creating planes in this lesson; one is from points and one is from curves. You're going to find a lot of different geometric types that are going to ask for a plane. Sometimes they just ask for an origin, but you might see an option there to input a plane or they might just be asking for a plane. Like a circle asks for an origin or a plane, a rectangle, I think just needs a plane, ellipses, arcs might need a plane to actually be constructed. The first and probably used, I would say probably 90 percent of the time to create a plane, is a plane from points. We have to input three points to define a plane. Why is that? Well, three points always form a triangle. No matter how we put a triangle in space, it's always going to be flat. So a triangle and three points are always defining a plane in space. The function plane from points takes three arguments, so it takes an origin, and it takes an x-axis, and it takes a y-axis in that order. The order is important in which you select them because it also orients the plane in a particular way. That's another thing to keep in mind, is the order of the points that you input. Then once I have the plane input, I would need to save that in its own variable, and then I can use it. In this case, let's say I wanted to create a circle using this plane, instead of inputting an origin point as we've been working with, I would input a plane. It's going to use the plane's origin as the origin point for the circle, and it's going to allow us to create that circle anywhere in space. If I'm using my matrix to create an array of circles and I've manipulated my matrix, if I use three points within that, careful about the points that I choose, I can create a plane and create those circles anywhere in space. We're going to go through a number of examples of how we do that within the code, and so that'll become clear by the end of this lesson. Just briefly, the other way that we're going to find a plane is based on a curve. Doesn't have to be a curvy curve, could be a straight curve. When we create a curve, every curve has a direction, and every point along that curve has what's called a normal. A normal is a tangent line to that point on that curve, and it's really a normal it's really a vector. We're going to get into that a little bit more when we talk about vectors. But the thing to understand is that because the normal point on that curve, and that curve could be anywhere in space, that normal point allows us to define a plane anywhere along that curve. That's another method that we use, is a plane from a curve, and we just have to input a curve, and we're going to have to input a value which is not a point but is a domain value, which is essentially a number that's defining the position along that curve where I want to find that. First of all, find the normal, but then find the plane. That becomes our origin point, and from that origin point I can then construct a plane, and then I can use that plane to then create geometry from that's going to be defined along that curve, in a sense perpendicular to the curve. That's a really handy way for positioning geometry in space. Oftentimes I'll use a curve as a constructed element in order to find a series of profiles through space that, let's say, I could do something like loft between them. So if we found a whole bunch of planes along this curve, we could define this circles along the curve, maybe they're different sizes, and then we could loft the surface along that curve. It's a very handy tool for starting to create more complex geometry. Again, I'm going to go through those tools again in finer detail within the code, showing a bunch of examples, and then you'll be able to put them to use within your own codes.