{"id":671,"date":"2020-03-08T18:50:14","date_gmt":"2020-03-08T18:50:14","guid":{"rendered":"https:\/\/www.parametriczoo.com\/?p=671"},"modified":"2020-03-08T18:55:05","modified_gmt":"2020-03-08T18:55:05","slug":"fit-objects-between-points","status":"publish","type":"post","link":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/","title":{"rendered":"Fit objects between points."},"content":{"rendered":"\n[et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;3.22.7&#8243; custom_padding=&#8221;5px|||||&#8221;][et_pb_row _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_text _builder_version=&#8221;3.22.7&#8243; custom_padding=&#8221;||0px|||&#8221;]<p>Today I saw a question on Para-3d forum which I found interesting in the topic of the transformations. Here is the equation :\u00a0<span style=\"font-size: 14px;\">\u00a0<\/span><\/p>[\/et_pb_text][et_pb_blurb use_icon=&#8221;on&#8221; hover_enabled=&#8221;0&#8243; icon_placement=&#8221;left&#8221; title=&#8221;Question:&#8221; _builder_version=&#8221;3.22.7&#8243; font_icon=&#8221;%%84%%&#8221; background_color=&#8221;#efefef&#8221; body_font=&#8221;||on||||||&#8221;]<p>Hi! Please help to understand how to accomplish the task:<br \/> I have an array(1d) of instanced shapes along path-spline.<br \/> Starting shape has 100% size and end one is of 20%<br \/> What should I rearrange to eliminate gaps between gradually diminishing shapes aligned to path? At the same time I do not want to have my shapes deformed in any way (by FFD and other means)Bounding box button of linear controller is not active in my case. Please see attached images.<br \/> Sorry but I could not upload images directly to the forum &#8211; it does not work, please check, and my illustrations for the question are here:<\/p>\n[\/et_pb_blurb][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/para-3d-qouestion-1.jpg&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_text _builder_version=&#8221;3.22.7&#8243; custom_margin=&#8221;||0px|||&#8221;]<p>Here I redefine the problem so that we can take right approach to the solution.<\/p>\n<p>Th triangle object is arrayed on a 2D curve and it is scaled to fit in each division. The problem has two parts, First dividing the curve into uneven divisions that are gradually increasing in size from one end to other, the second part of the problem deals with fitting the triangles within each division.<span style=\"font-size: 14px;\">\u00a0<\/span><\/p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/fitting-traingles-between-points.png&#8221; _builder_version=&#8221;3.22.7&#8243; custom_margin=&#8221;||2px|||&#8221;][\/et_pb_image][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>Two divide the problem into above mentioned parts, we first array points (Helper object) on the curve and then in the next part we use these points to array the triangles.<\/p>\n<p>Now with points we solve the first problem : We have a curve in 2D space which must be divided in an uneven manner. So first step is to find a way to control the length of the divisions. The Curve controller in Para-3d offers several ways to do subdivide the curves , such as divide by <strong>number<\/strong>, divide by <strong>curve length<\/strong> and divide by <strong>curve parameter<\/strong>. Here I should use<strong> Curve parameter<\/strong> instead of default divisions so that I can alter the spacing along the curve.\u00a0\u00a0<\/p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/array-points-on-curve.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_text _builder_version=&#8221;3.22.7&#8243; custom_padding=&#8221;||0px|||&#8221;]<p>Notice in above Para flow, the Graph is controlling the Curve parameter, and the spacing between the points are gradually increasing by the graph from 0 to 1. If graph was a straight line then the gap between points would have been almost equal.\u00a0\u00a0<\/p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/divide-by-the-curve-parameter.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>The second step is to array the object in such a way that it fits between two consecutive points. For each object we look up two points, let&#8217;s say P1 for the corresponding point and P2 for the the next point in the array. This is done by Para-Link controller.<\/p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; gutter_width=&#8221;2&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/point-1-and-2.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/p1.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/p2.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>We now construct a vector which connects point P1 to P2. This vector is used to create a plane which the object will fit into. We normalized the vector P2-P1 so it does not affect the scale of the object. Both operations can be done by the <strong>vector controller<\/strong>.<\/p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; gutter_width=&#8221;1&#8243; _builder_version=&#8221;3.22.7&#8243; custom_padding=&#8221;||10px|||&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/p2-p1-normalized.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image show_in_lightbox=&#8221;on&#8221; src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/p2-p1.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image show_in_lightbox=&#8221;on&#8221; src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/normalized.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>To construct a frame we require 3 vectors. The X basis of the frame is given by the vector P2-P1 and the Y basis is the same vector but rotated 90 degree. We use the global Z axis for the Z basis since the curve is in XY plane.<\/p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/xyz-frame-figure.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>The XYZ frame is created by the convert controller which converts 3 given vectors to a frame. we also use a <strong>Transform<\/strong> <strong>controller<\/strong> to rotate the X basis .<\/p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; gutter_width=&#8221;1&#8243; width=&#8221;100%&#8221; _builder_version=&#8221;3.22.7&#8243; padding_top_bottom_link_2=&#8221;true&#8221; padding_top_bottom_link_3=&#8221;true&#8221; padding_left_right_link_3=&#8221;true&#8221;][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/XYZ-frame.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/triangle.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image show_in_lightbox=&#8221;on&#8221; src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/rotate-90.png&#8221; _builder_version=&#8221;3.22.7&#8243; custom_padding=&#8221;0px|0px|0px|0px&#8221; custom_margin=&#8221;0px|0px|0px|0px&#8221;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image show_in_lightbox=&#8221;on&#8221; src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/Z-axis.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image show_in_lightbox=&#8221;on&#8221; src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/XYZ-frame-panel.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>Now that we have constructed the frame , we can use it to position and align the triangles , however, the triangle must have its X local axis along the lower edge and its local origin at the lower left corner as it is shown in the above.\u00a0<\/p>[\/et_pb_text][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/update-1.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>Trandform controller takes an initial transformation as input and perform further transformations. This is similar to multiplication of transformation matrices from left to right.\u00a0\u00a0<\/p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; gutter_width=&#8221;2&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image show_in_lightbox=&#8221;on&#8221; src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/transfrom.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/move.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>Last step is to scale the object in order for it to fit between points P1 and P2. Here we need two measurements, one is the distance between P1 and P2, and the second is the size of the object along its local X axis. Once we have these two dimensions , we can divide the distance |P2-P1| by the object size and find the scale factor. In below you can see how this is done using Para-3d controllers.<\/p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][et_pb_row use_custom_gutter=&#8221;on&#8221; gutter_width=&#8221;2&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image show_in_lightbox=&#8221;on&#8221; src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/size-of-original-object.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/nogon-node.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/A-divide-by-b.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/x-size.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][et_pb_column type=&#8221;1_3&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_image src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/distance-between-p1-and-p2.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;3.22.7&#8243;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;3.22.7&#8243;][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>Note that to obtain the object size we need to keep a copy of the original object. The original object the is assigned to a Para container to measure its size in local X axis.\u00a0<\/p>\n<p>Adding the scale factor to the transform controller makes our graph completed.\u00a0\u00a0<\/p>\n<p>&nbsp;<\/p>[\/et_pb_text][et_pb_image show_in_lightbox=&#8221;on&#8221; src=&#8221;https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/complete-paraflow.png&#8221; _builder_version=&#8221;3.22.7&#8243;][\/et_pb_image][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<p>I hope this explained the process of the transformation. We combine all sort of transformations including\u00a0<\/p>[\/et_pb_text][et_pb_text _builder_version=&#8221;3.22.7&#8243;]<ul>\n<li>Alignment using XYZ Frame<\/li>\n<li>Move<\/li>\n<li>Rotation\u00a0<\/li>\n<li>Scale\u00a0<\/li>\n<\/ul>[\/et_pb_text][et_pb_text _builder_version=&#8221;3.22.7&#8243; custom_margin=&#8221;-5px|||||&#8221;]<p>Please feel free to comment if you didn&#8217;t follow me \ud83d\ude09<\/p>[\/et_pb_text][\/et_pb_column][\/et_pb_row][\/et_pb_section]\n","protected":false},"excerpt":{"rendered":"<p>Today I saw a question on Para-3d forum which I found interesting in the topic of the transformations. Here is the equation :\u00a0\u00a0Hi! Please help to understand how to accomplish the task: I have an array(1d) of instanced shapes along path-spline. Starting shape has 100% size and end one is of 20% What should I [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":677,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":""},"categories":[46,51],"tags":[53,52,54],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Fit objects between points. - Parametric Zoo<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fit objects between points. - Parametric Zoo\" \/>\n<meta property=\"og:description\" content=\"Today I saw a question on Para-3d forum which I found interesting in the topic of the transformations. Here is the equation :\u00a0\u00a0Hi! Please help to understand how to accomplish the task: I have an array(1d) of instanced shapes along path-spline. Starting shape has 100% size and end one is of 20% What should I [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/\" \/>\n<meta property=\"og:site_name\" content=\"Parametric Zoo\" \/>\n<meta property=\"article:published_time\" content=\"2020-03-08T18:50:14+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-03-08T18:55:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/fitting-traingles-between-points.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1774\" \/>\n\t<meta property=\"og:image:height\" content=\"981\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"PARA\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"PARA\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.parametriczoo.com\/#website\",\"url\":\"https:\/\/www.parametriczoo.com\/\",\"name\":\"Parametric Zoo\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.parametriczoo.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/#primaryimage\",\"url\":\"https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/fitting-traingles-between-points.png\",\"contentUrl\":\"https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/fitting-traingles-between-points.png\",\"width\":1774,\"height\":981},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/\",\"url\":\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/\",\"name\":\"Fit objects between points. - Parametric Zoo\",\"isPartOf\":{\"@id\":\"https:\/\/www.parametriczoo.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/#primaryimage\"},\"datePublished\":\"2020-03-08T18:50:14+00:00\",\"dateModified\":\"2020-03-08T18:55:05+00:00\",\"author\":{\"@id\":\"https:\/\/www.parametriczoo.com\/#\/schema\/person\/0368c6eb8bfe3a003504793be2a2e0e3\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.parametriczoo.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Fit objects between points.\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.parametriczoo.com\/#\/schema\/person\/0368c6eb8bfe3a003504793be2a2e0e3\",\"name\":\"PARA\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.parametriczoo.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/2b2ff0ff40493545df12d0b31a504675?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/2b2ff0ff40493545df12d0b31a504675?s=96&d=mm&r=g\",\"caption\":\"PARA\"},\"url\":\"https:\/\/www.parametriczoo.com\/index.php\/author\/para\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fit objects between points. - Parametric Zoo","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/","og_locale":"en_US","og_type":"article","og_title":"Fit objects between points. - Parametric Zoo","og_description":"Today I saw a question on Para-3d forum which I found interesting in the topic of the transformations. Here is the equation :\u00a0\u00a0Hi! Please help to understand how to accomplish the task: I have an array(1d) of instanced shapes along path-spline. Starting shape has 100% size and end one is of 20% What should I [&hellip;]","og_url":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/","og_site_name":"Parametric Zoo","article_published_time":"2020-03-08T18:50:14+00:00","article_modified_time":"2020-03-08T18:55:05+00:00","og_image":[{"width":1774,"height":981,"url":"https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/fitting-traingles-between-points.png","type":"image\/png"}],"author":"PARA","twitter_card":"summary_large_image","twitter_misc":{"Written by":"PARA","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/www.parametriczoo.com\/#website","url":"https:\/\/www.parametriczoo.com\/","name":"Parametric Zoo","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.parametriczoo.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/#primaryimage","url":"https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/fitting-traingles-between-points.png","contentUrl":"https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/fitting-traingles-between-points.png","width":1774,"height":981},{"@type":"WebPage","@id":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/","url":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/","name":"Fit objects between points. - Parametric Zoo","isPartOf":{"@id":"https:\/\/www.parametriczoo.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/#primaryimage"},"datePublished":"2020-03-08T18:50:14+00:00","dateModified":"2020-03-08T18:55:05+00:00","author":{"@id":"https:\/\/www.parametriczoo.com\/#\/schema\/person\/0368c6eb8bfe3a003504793be2a2e0e3"},"breadcrumb":{"@id":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.parametriczoo.com\/index.php\/2020\/03\/08\/fit-objects-between-points\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.parametriczoo.com\/"},{"@type":"ListItem","position":2,"name":"Fit objects between points."}]},{"@type":"Person","@id":"https:\/\/www.parametriczoo.com\/#\/schema\/person\/0368c6eb8bfe3a003504793be2a2e0e3","name":"PARA","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.parametriczoo.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/2b2ff0ff40493545df12d0b31a504675?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/2b2ff0ff40493545df12d0b31a504675?s=96&d=mm&r=g","caption":"PARA"},"url":"https:\/\/www.parametriczoo.com\/index.php\/author\/para\/"}]}},"jetpack_featured_media_url":"https:\/\/www.parametriczoo.com\/wp-content\/uploads\/2020\/03\/fitting-traingles-between-points.png","_links":{"self":[{"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/posts\/671"}],"collection":[{"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/comments?post=671"}],"version-history":[{"count":0,"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/posts\/671\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/media\/677"}],"wp:attachment":[{"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/media?parent=671"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/categories?post=671"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.parametriczoo.com\/index.php\/wp-json\/wp\/v2\/tags?post=671"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}