execute chamfers and fillets early if in a pattern (#2759)
* updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * updates Signed-off-by: Jess Frazelle <github@jessfraz.com> * bump kcl version Signed-off-by: Jess Frazelle <github@jessfraz.com> * fix others Signed-off-by: Jess Frazelle <github@jessfraz.com> --------- Signed-off-by: Jess Frazelle <github@jessfraz.com>
This commit is contained in:
		@ -197,10 +197,140 @@ string,
 | 
			
		||||
},
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The extrude group the face is on.
 | 
			
		||||
	extrudeGroup: {
 | 
			
		||||
	// The id of the extrusion end cap
 | 
			
		||||
	endCapId: uuid,
 | 
			
		||||
	// Chamfers or fillets on this extrude group.
 | 
			
		||||
	filletOrChamfers: [{
 | 
			
		||||
	// The engine id of the edge to fillet.
 | 
			
		||||
	edge_id: uuid,
 | 
			
		||||
	// The id of the engine command that called this fillet.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	radius: number,
 | 
			
		||||
	type: "fillet",
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The engine id of the edge to chamfer.
 | 
			
		||||
	edge_id: uuid,
 | 
			
		||||
	// The id of the engine command that called this chamfer.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	length: number,
 | 
			
		||||
	type: "chamfer",
 | 
			
		||||
}],
 | 
			
		||||
	// The height of the extrude group.
 | 
			
		||||
	height: number,
 | 
			
		||||
	// The id of the extrude group.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// The sketch group.
 | 
			
		||||
	sketchGroup: {
 | 
			
		||||
	// The id of the sketch group.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// What the sketch is on (can be a plane or a face).
 | 
			
		||||
	on: SketchSurface,
 | 
			
		||||
	// The starting path.
 | 
			
		||||
	start: {
 | 
			
		||||
	// The from point.
 | 
			
		||||
	from: [number, number],
 | 
			
		||||
	// The name of the path.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The to point.
 | 
			
		||||
	to: [number, number],
 | 
			
		||||
},
 | 
			
		||||
	// The paths in the sketch group.
 | 
			
		||||
	value: [{
 | 
			
		||||
	// The from point.
 | 
			
		||||
	from: [number, number],
 | 
			
		||||
	// The name of the path.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The to point.
 | 
			
		||||
	to: [number, number],
 | 
			
		||||
	type: "ToPoint",
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// arc's direction
 | 
			
		||||
	ccw: string,
 | 
			
		||||
	// the arc's center
 | 
			
		||||
	center: [number, number],
 | 
			
		||||
	// The from point.
 | 
			
		||||
	from: [number, number],
 | 
			
		||||
	// The name of the path.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The to point.
 | 
			
		||||
	to: [number, number],
 | 
			
		||||
	type: "TangentialArcTo",
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The from point.
 | 
			
		||||
	from: [number, number],
 | 
			
		||||
	// The name of the path.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The to point.
 | 
			
		||||
	to: [number, number],
 | 
			
		||||
	type: "TangentialArc",
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The from point.
 | 
			
		||||
	from: [number, number],
 | 
			
		||||
	// The name of the path.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The to point.
 | 
			
		||||
	to: [number, number],
 | 
			
		||||
	type: "Horizontal",
 | 
			
		||||
	// The x coordinate.
 | 
			
		||||
	x: number,
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The from point.
 | 
			
		||||
	from: [number, number],
 | 
			
		||||
	// The name of the path.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The to point.
 | 
			
		||||
	to: [number, number],
 | 
			
		||||
	type: "AngledLineTo",
 | 
			
		||||
	// The x coordinate.
 | 
			
		||||
	x: number,
 | 
			
		||||
	// The y coordinate.
 | 
			
		||||
	y: number,
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The from point.
 | 
			
		||||
	from: [number, number],
 | 
			
		||||
	// The name of the path.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The to point.
 | 
			
		||||
	to: [number, number],
 | 
			
		||||
	type: "Base",
 | 
			
		||||
}],
 | 
			
		||||
},
 | 
			
		||||
	// The id of the extrusion start cap
 | 
			
		||||
	startCapId: uuid,
 | 
			
		||||
	// The extrude surfaces.
 | 
			
		||||
	value: [{
 | 
			
		||||
	// The face id for the extrude plane.
 | 
			
		||||
	faceId: uuid,
 | 
			
		||||
	// The id of the geometry.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// The name.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The source range.
 | 
			
		||||
	sourceRange: [number, number],
 | 
			
		||||
	type: "extrudePlane",
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The face id for the extrude plane.
 | 
			
		||||
	faceId: uuid,
 | 
			
		||||
	// The id of the geometry.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// The name.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The source range.
 | 
			
		||||
	sourceRange: [number, number],
 | 
			
		||||
	type: "extrudeArc",
 | 
			
		||||
}],
 | 
			
		||||
},
 | 
			
		||||
	// The id of the face.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// The original sketch group id of the object we are sketching on.
 | 
			
		||||
	sketchGroupId: uuid,
 | 
			
		||||
	type: "face",
 | 
			
		||||
	// The tag of the face.
 | 
			
		||||
	value: string,
 | 
			
		||||
@ -307,6 +437,23 @@ string,
 | 
			
		||||
{
 | 
			
		||||
	// The id of the extrusion end cap
 | 
			
		||||
	endCapId: uuid,
 | 
			
		||||
	// Chamfers or fillets on this extrude group.
 | 
			
		||||
	filletOrChamfers: [{
 | 
			
		||||
	// The engine id of the edge to fillet.
 | 
			
		||||
	edge_id: uuid,
 | 
			
		||||
	// The id of the engine command that called this fillet.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	radius: number,
 | 
			
		||||
	type: "fillet",
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The engine id of the edge to chamfer.
 | 
			
		||||
	edge_id: uuid,
 | 
			
		||||
	// The id of the engine command that called this chamfer.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	length: number,
 | 
			
		||||
	type: "chamfer",
 | 
			
		||||
}],
 | 
			
		||||
	// The height of the extrude group.
 | 
			
		||||
	height: number,
 | 
			
		||||
	// The id of the extrude group.
 | 
			
		||||
@ -348,10 +495,61 @@ string,
 | 
			
		||||
},
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The extrude group the face is on.
 | 
			
		||||
	extrudeGroup: {
 | 
			
		||||
	// The id of the extrusion end cap
 | 
			
		||||
	endCapId: uuid,
 | 
			
		||||
	// Chamfers or fillets on this extrude group.
 | 
			
		||||
	filletOrChamfers: [{
 | 
			
		||||
	// The engine id of the edge to fillet.
 | 
			
		||||
	edge_id: uuid,
 | 
			
		||||
	// The id of the engine command that called this fillet.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	radius: number,
 | 
			
		||||
	type: "fillet",
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The engine id of the edge to chamfer.
 | 
			
		||||
	edge_id: uuid,
 | 
			
		||||
	// The id of the engine command that called this chamfer.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	length: number,
 | 
			
		||||
	type: "chamfer",
 | 
			
		||||
}],
 | 
			
		||||
	// The height of the extrude group.
 | 
			
		||||
	height: number,
 | 
			
		||||
	// The id of the extrude group.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// The sketch group.
 | 
			
		||||
	sketchGroup: SketchGroup,
 | 
			
		||||
	// The id of the extrusion start cap
 | 
			
		||||
	startCapId: uuid,
 | 
			
		||||
	// The extrude surfaces.
 | 
			
		||||
	value: [{
 | 
			
		||||
	// The face id for the extrude plane.
 | 
			
		||||
	faceId: uuid,
 | 
			
		||||
	// The id of the geometry.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// The name.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The source range.
 | 
			
		||||
	sourceRange: [number, number],
 | 
			
		||||
	type: "extrudePlane",
 | 
			
		||||
} |
 | 
			
		||||
{
 | 
			
		||||
	// The face id for the extrude plane.
 | 
			
		||||
	faceId: uuid,
 | 
			
		||||
	// The id of the geometry.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// The name.
 | 
			
		||||
	name: string,
 | 
			
		||||
	// The source range.
 | 
			
		||||
	sourceRange: [number, number],
 | 
			
		||||
	type: "extrudeArc",
 | 
			
		||||
}],
 | 
			
		||||
},
 | 
			
		||||
	// The id of the face.
 | 
			
		||||
	id: uuid,
 | 
			
		||||
	// The original sketch group id of the object we are sketching on.
 | 
			
		||||
	sketchGroupId: uuid,
 | 
			
		||||
	type: "face",
 | 
			
		||||
	// The tag of the face.
 | 
			
		||||
	value: string,
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user