ββLegacy Tutorial: Some scripts may produce some warnings or errors with newer versions.
ββWhy Paving Kit?
ββPaving Kitprovides accessibility to complex paving design and application to uses of its tools beyond paving design. This tool set was developed with the idea that customization and complexity should be built into user friendly components. The outcome is a set of tools which provide outputs that can be used for various applications from facade design, planting pattern making, and much more. Whether you want a path of brick-sized pavers or a custom tessellation pattern for the facade of a new building, Paving Kit makes computational pattern making easy to use.
ββ
ββIn this course, we will begin to look at how to create digital instances of paving areas, color rules, and custom pavers. We will look at the characteristics of building a paving area with its embedded rules to create a custom pattern that can be portrayed in 2D and 3D.
ββThese first 4 examples donβt need a Rhino file. All example geometry is internalized in the input components. You can always reference your own geometry into those inputs. Or bake the input and re-reference if you want to work from the example.
ββ
ββ
ββModule 0: Paving Kit Most Basic
ββ
ββThe most basic way to get a pattern on an area, simple and powerful. This module focuses on the components needed for a simple workflow to create your paving design.
ββ
ββBegin with designating your paving areas using the Create Areas Paving component. This component takes in Breps or surfaces and converts them to Area Instances which function as an aggregation of geometry and data through the Paving Kit workflow. Upon creating your paving areas, you can begin designating what type of paver will populate your paving areas. Using the Add Pattern to Areas, set your pattern type and the paver dimensions. There are 6 different pattern types, each one a standard paving pattern type. Next you set your Point of Beginning(POB) which is the starting point from which the pavers will array. This point should be located within or near your paving area.
ββ
ββThe next step in the process is to trim your pavers to the boundary of your paving areas using the Trim Pavers to Area component. you will see how to select a paver type and specify its dimensions to be arrayed across your paving area. The last step in the process is to visualize your pavers using the Draw Area Pattern.
ββ
ββIts important to pay attention to the type input for this component. The type input determines whether the pavers will be output as curves, surfaces, or extrusions. The extrusion type output will be a solid Brep with a thickness designated by the input into thickness. This output type is processing heavy. Be sure to only use the extrusion output on smaller paving areas since larger areas may cause your Rhino and Grasshopper to crash. Surface outputs are also somewhat processing heavy as well.
ββ
ββThe color inputs for this component can be one or more individual color swatches. These can also be guided by color rules to create specific color patterns and gradients, but we will learn more about those in the next module.
ββ
ββ
ββ
ββ
ββ
ββ
ββModule 1: Paving Kit Colors
ββ
ββIn this module you will learn about how to use the Paving Kit color components to create gradients and patterns using your color swatches. As you build your workflow, prior to your Draw Area Pattern component, you can embed color rules into your Area Instance to guide your pattern colors when you visualize them. The Add Color Rule component embeds your specified color rule into the Area Instance to act as a guide for your color selections in the Draw Area Pattern component. Some components work outside the Add Color Rule component though by creating mixes of colors which are piped directly into a Draw Area Pattern.
ββ
ββThe easiest way to use Paving Kit coloring is with Create Mix or the Create Multi Mix components. The Create Mix component works by taking two different colors and a percentage value to designate what percentage of pavers will be the first color. This is done by a random selection across the entire paving area. The Create Multi Mix component works similarly but is capable of using more than 2 color inputs. It works with a list of colors input in a specific order and a list of values in order to correspond to the number of colors being input. Those values act as a recipe for the percentages of each input color. For example, if you have three colors input, Red, Blue and Green in that order, and yourβrecipeβ is 4, 2, and 5 then for every 4 red pavers there will be 2 blue pavers and 5 green pavers. These two components are different from the traditional color rule components in that their outputs are piped directly into the color input of the Draw Area Pattern component.
ββ
ββThe more unique ways to add color into your paving pattern is by using color rules. Prior to connecting your Area Instance into the Draw Area Pattern component, pipe your Area Instance into an Add Color Rule component and then connect the output into your Draw Area Pattern component. You will then select one of the three different color rules to guide your color pattern. The first is the Attractor Color Rule which uses a geometry input and uses that geometry to attract the color. The other inputs give you control over how much the gradient moving out from the attractor geometry is affected. The second component is the Gradient Curve Color Rule, which uses a curve input to create a simple gradient from the start to the end of the curve across your paving area. The last component is the Image Color Rule, which uses an image input from your computer and maps your color selections to the image to recreate the image in the paving pattern using the color choices input into the Draw Area Pattern component.
ββ
ββAdding color rules allows you to apply color to the pavers flexibly without having to specify exactly which color each paver is, so that you can focus on larger gestures in your design.
ββ
ββ
ββ
ββ
ββ
ββ
ββModule 2: Custom Pavers
ββ
ββIn this module you will learn about the two methods for creating custom pavers. The benefits of custom pavers are far reaching. Whether you are trying to create a simple hexagonal paving pattern or you want your design to look like an MC Escher painting, Paving Kitβs custom pavers and patterns give you full control over your paving design.
ββ
ββThe first custom paver workflow involves the use of the Module Array component. To use this component you must first create the geometry for the module, which is a surface or Brep, and the module curves. The Module Array component works by taking the output of the Draw Area Pattern and mapping the module input to the paver dimensions of the Draw Area Pattern component. In doing so it also maps the related module curves which act as splitting curves for the module. The result is the split module fitting within the pavers of the Draw Area Pattern providing a secondary layer of paver patterning which can be guided by color rules as well.
ββ
ββA few things to remember when creating your module array is that the mapping from the module surface to the paver works best when the module is a rectangle, since the standard paver style out of the Draw Area Pattern is a rectangle. The second important note is that the curves which define the pavers within the module must be closed and must fall within the module itself. For every closed curve in the module a paver will be drawn, but if the curve is not closed or the line passes beyond the edge of the module surface then the output will be empty in that space of the module as its arrayed across the paving area.
ββ
ββ
ββ
ββ
ββ
ββ
ββThe second type of custom paver style is Paving Kitβs Add Tessellation Pattern component. This component replaces the Draw Area Pattern component in your Paving Kit workflow since it functions as a fully custom paving pattern generator. Add Tessellation Pattern utilizes the Point of Beginning(POB) input just the same as the Draw Area Pattern component. The inputs for building the paver are made up of geometry, the first being one or more closed curves which are the shape and size of the paver. The tess_geo input is a custom drawn paver using one or more closed curves to define the parts of the paver which will repeat. The other three inputs give you control over how the paver repeats. These three inputs are the origin, u_point, and the v_point. The origin point is the reference for how the other two inputs create the repetition. The u_point is the first direction to guide the tessellation and the v_point is the second direction.
ββ
ββA good way to think about how these reference points create your tessellation is to imagine them as locations your custom paver curves will move to when repeating. The tess_geo inputs will copy from the origin point to each of the two directional points and continue coping to the newly copied custom pavers until the entire paving area is covered in your tessellation pattern. It may take some trial and error to get the pattern repeating exactly how you want it to, which is why the Add Tessellation Pattern component has a preview output. The tess_preview output simply displays the custom paver in a 9x9 pattern so that you can easily visualize how the pattern will look as it repeats. Use this preview feature to fine tune your tessellation pattern before trimming and visualizing your custom paving design for the best outcome.
ββ
ββ
ββ
ββ
ββ
ββ
ββModule 3: Baking Pavers
ββ
ββIn this module you will learn about the components which are useful in the final steps before baking your paving design, such as projecting your pavers and adding texture maps to them. This is the final step before baking your paving design for documentation and rendering for your new design.
ββ
ββThe first section of this module will focus on two components, which are the Project Paver Meshes component and the Add Paver Texture component.
ββ
ββThe Project Paver Meshes component utilizes simple inputs to produce a complex output. The pavers output from the Draw Area Pattern is first piped into a mesh parameter component, or a Prep/mesh component, to convert your Brep outputs into meshes. These meshed pavers are then input into the Project Paver Meshes component alongside a meshed version of your 3D topography. The output are all your meshed pavers projected to the 3D topography while keeping each paver planar, meaning that each individual pavers maintains a level surface on the exposed top just as a paver would if it was on a curved surface. It is still not recommended that this tool be used for precision when deciding how well the pavers will fit on a complicated terrain, since there is still some dimensional distortion during the projection.
ββ
ββThe Add Paver Texture component is a tool which is most useful when trying to create a high quality render or visualization of your paving design. This tool begins similarly to the Project Paver Meshes component in that it requires converting your paver output from the Draw Area Pattern component to meshes. Once the pavers are converted, you pipe them into the paver meshes input. The output is all of your pavers with randomized material maps. The min scale and max scale inputs allow you to adjust the scale of the material mapping, in case your pavers are larger. You may not see any difference until you preview your pavers with a texture input using the Custom Preview Materials component in the Human plugin. This component allows you to input a file path with a material image and it will use the paver material maps to preview the paver materials with their random rotations and scales. Once you bake your pavers into Rhino the newly randomized material maps will be applied to your pavers as well allowing you to apply any material in Rhino. This allows you to visualize your pavers using a single image material map with variation in the material application.
ββ
ββThis example file has no specific file for reference. Follow along with the video using the Rhino and Grasshopper files called 04 Paving Kit Full Workflow to learn about how these components integrate into your Paving Kit workflow.
ββWhy Paving Kit?
ββCourse Modules
ββDownload PAV101 Course Files
ββModule 0: Paving Kit Most Basic
ββModule 1: Paving Kit Colors
ββModule 2: Custom Pavers
ββModule 3: Baking Pavers