* Show more info on hover for variables Signed-off-by: Nick Cameron <nrc@ncameron.org> * Move hover impls to lsp module Signed-off-by: Nick Cameron <nrc@ncameron.org> * Make hover work on names inside calls, fix doc line breaking, trim docs in tool tips Signed-off-by: Nick Cameron <nrc@ncameron.org> * Test the new hovers; fix signature syntax Signed-off-by: Nick Cameron <nrc@ncameron.org> * Hover tips for kwargs Signed-off-by: Nick Cameron <nrc@ncameron.org> --------- Signed-off-by: Nick Cameron <nrc@ncameron.org>
		
			
				
	
	
	
		
			52 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			52 KiB
		
	
	
	
	
	
	
	
title, excerpt, layout
| title | excerpt | layout | 
|---|---|---|
| patternTransform2d | Just like patternTransform, but works on 2D sketches not 3D solids. | manual | 
Just like patternTransform, but works on 2D sketches not 3D solids.
patternTransform2d(
  sketchSet: SketchSet,
  instances: integer,
  transform: FunctionSource,
  useOriginal?: bool,
): [Sketch]
Arguments
| Name | Type | Description | Required | 
|---|---|---|---|
sketchSet | 
SketchSet | 
The sketch(es) to duplicate | Yes | 
instances | 
integer | 
The number of total instances. Must be greater than or equal to 1. This includes the original entity. For example, if instances is 2, there will be two copies -- the original, and one new copy. If instances is 1, this has no effect. | Yes | 
transform | 
FunctionSource | 
How each replica should be transformed. The transform function takes a single parameter: an integer representing which number replication the transform is for. E.g. the first replica to be transformed will be passed the argument 1. This simplifies your math: the transform function can rely on id 0 being the original instance passed into the patternTransform. See the examples. | 
Yes | 
useOriginal | 
bool | 
If the target was sketched on an extrusion, setting this will use the original sketch as the target, not the entire joined solid. Defaults to false. | No | 
Returns
Examples
// Each instance will be shifted along the X axis.
fn transform(id) {
  return { translate = [4 * id, 0] }
}
// Sketch 4 circles.
sketch001 = startSketchOn('XZ')
  |> circle(center = [0, 0], radius = 2)
  |> patternTransform2d(instances = 4, transform = transform)