215 lines
		
	
	
		
			131 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			215 lines
		
	
	
		
			131 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | ||
| title: "patternLinear2d"
 | ||
| excerpt: "A linear pattern on a 2D sketch."
 | ||
| layout: manual
 | ||
| ---
 | ||
| 
 | ||
| A linear pattern on a 2D sketch.
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| ```js
 | ||
| patternLinear2d(data: LinearPattern2dData, sketch_group: SketchGroup) -> [SketchGroup]
 | ||
| ```
 | ||
| 
 | ||
| ### Examples
 | ||
| 
 | ||
| ```js
 | ||
| const part = startSketchOn('XY')
 | ||
|   |> circle([0, 0], 2, %)
 | ||
|   |> patternLinear2d({
 | ||
|        axis: [0, 1],
 | ||
|        repetitions: 12,
 | ||
|        distance: 2
 | ||
|      }, %)
 | ||
| ```
 | ||
| 
 | ||
| 
 | ||
| 
 | ||
| ### Arguments
 | ||
| 
 | ||
| * `data`: `LinearPattern2dData` - Data for a linear pattern on a 2D sketch. (REQUIRED)
 | ||
| ```js
 | ||
| {
 | ||
| 	// The axis of the pattern. This is a 2D vector.
 | ||
| 	axis: [number, number],
 | ||
| 	// The distance between each repetition. This can also be referred to as spacing.
 | ||
| 	distance: number,
 | ||
| 	// The number of repetitions. Must be greater than 0. This excludes the original entity. For example, if `repetitions` is 1, the original entity will be copied once.
 | ||
| 	repetitions: number,
 | ||
| }
 | ||
| ```
 | ||
| * `sketch_group`: `SketchGroup` - A sketch group is a collection of paths. (REQUIRED)
 | ||
| ```js
 | ||
| {
 | ||
| 	// The plane id or face id of the sketch group.
 | ||
| 	entityId: uuid,
 | ||
| 	// The id of the sketch group.
 | ||
| 	id: uuid,
 | ||
| 	// What the sketch is on (can be a plane or a face).
 | ||
| 	on: {
 | ||
| 	// The id of the plane.
 | ||
| 	id: uuid,
 | ||
| 	// Origin of the plane.
 | ||
| 	origin: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| 	type: "plane",
 | ||
| 	// Type for a plane.
 | ||
| 	value: "XY" | "XZ" | "YZ" | "Custom",
 | ||
| 	// What should the plane’s X axis be?
 | ||
| 	xAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| 	// What should the plane’s Y axis be?
 | ||
| 	yAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| 	// The z-axis (normal).
 | ||
| 	zAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| } |
 | ||
| {
 | ||
| 	// the face id the sketch is on
 | ||
| 	faceId: uuid,
 | ||
| 	// 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,
 | ||
| 	// What should the face’s X axis be?
 | ||
| 	xAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| 	// What should the face’s Y axis be?
 | ||
| 	yAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| 	// The z-axis (normal).
 | ||
| 	zAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| },
 | ||
| 	// The position of the sketch group.
 | ||
| 	position: [number, number, number],
 | ||
| 	// The rotation of the sketch group base plane.
 | ||
| 	rotation: [number, number, number, number],
 | ||
| 	// 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 x-axis of the sketch group base plane in the 3D space
 | ||
| 	xAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| 	// The y-axis of the sketch group base plane in the 3D space
 | ||
| 	yAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| 	// The z-axis of the sketch group base plane in the 3D space
 | ||
| 	zAxis: {
 | ||
| 	x: number,
 | ||
| 	y: number,
 | ||
| 	z: number,
 | ||
| },
 | ||
| }
 | ||
| ```
 | ||
| 
 | ||
| ### Returns
 | ||
| 
 | ||
| `[SketchGroup]`
 | ||
| 
 | ||
| 
 | ||
| 
 |