GH_GDI_Util
Contains some global function for filleting corners of GDI objects.
Methods
BoxUnion
#Create the outline of a set of boxes.
Parameters:
| rectangles (IEnumerable<Rectangle>) | Boxes to union. |
Returns: A list of Point arrays, where each array describes the corners of each silhouette.
FilletBoxOutline
#Fillet all the corners of the combined outline of a set of rectangles.
Parameters:
| boxes (IEnumerable<Rectangle>) | Rectangles to outline. |
| radius (int) | Radius of corner fillets. |
Returns: GraphicsPath describing the filleted outline or null on failure.
Freeform_Blob
#public static GraphicsPath Freeform_Blob(IEnumerable<RectangleF> content, int padding, double accuracy, FieldSolver solver, double section)
Create a meta-ball outline for a set of rectangles.
Parameters:
| content (IEnumerable<RectangleF>) | Rectangles to encompass. |
| padding (int) | Number of units to add to each box. |
| accuracy (double) | Pixel accuracy for isosurface outlines. 3 is a good value for 1:1 UI. |
| solver (GH_Context.FieldSolver) | The falloff solver to use. GH_Util.MetaBall.GH_Context contains a bunch of predefined solvers. |
| section (double) | Elevation of section plane. |
Returns: A graphics path describing all iso-surfaces
Freeform_Blob
#public static GraphicsPath Freeform_Blob(IEnumerable<RectangleF> content, int padding, double accuracy)
Create a meta-ball outline for a set of rectangles.
Parameters:
| content (IEnumerable<RectangleF>) | Rectangles to encompass. |
| padding (int) | Number of units to add to each box. |
| accuracy (double) | Pixel accuracy for isosurface outlines. 3 is a good value for 1:1 UI. |
Returns: A graphics path describing all iso-surfaces.
SimplifyBoxes
#Create a simplified collection of Rectangles that describe the same union space as the supplied rectangles.
Parameters:
| boxes (IEnumerable<Rectangle>) | Rectangles to simplify. |
Returns: An ordered collection of non-intersecting rectangles or null on failure.