This article explains how to use Construct Domain²(Dom²) to create a domain range.


On the Grasshopper, it is represented by either of the two above.
Construct Domain²(Dom²)
Construct Domain²(Dom²) allows you to create a domain range.
Then, by using it with Isotrim and others, you can extract any portion of the surface or surfaces.

At first, we will use this surface for the explanation.

Components used: (1) Surface (2) Construct Domain² (Dom²) (3) Isotrim
At first, we will see how to use Construct Domain²(Dom²) when Reparameterized to Isotrim.
Input numerical values from 0 to 1.0 to the Construct Domain²(Dom²)(U and V).
In this case, we input 0.5 to the U and 0.9 to the V.
Then, a domain range of 0~0.5 in the u-direction and 0~0.9 in the v-direction is created.
Then, we connect Construct Domain² (Dom²) to the Isotrim(D).
Finally, connect the surface data to the Isotrim(S).
This time, we store the surface we just created in Surface and connect it to the S.

At this point, right-click on the Isotrim(S) on the left side of Isotrim and set Reparameterize.
This will allow you to specify the position of the surface as a number from 0~1.0.

Then, we were able to extract a portion of the surface as shown here.
If you look closely, you will see that the u-direction ranges from 0~0.5, so one direction is half the length of the other.
On the other hand, the v direction has a range of 0~0.9, so the other direction is 90% as long.

Now we reverse the values by inputting 0.9 and 0.5 to the U and V, respectively.

Then the ratio of the lengths of each direction of the surfaces to be extracted is now the opposite of what it was before.

Now we set both values to 1.0.

By Reparameterize, the entire surface is now extracted since 1.0 is the maximum value for each length.
In this way, the domain range can be changed by changing the numerical values entered into the U and V.
Setting the initial value of the domain range
Previously, the initial value of the domain range was automatically set to 0.
By combining Construct Domain, you can set the initial value of the domain range.

Additional Components: (1) Construct Domain
First, prepare two Construct Domain.
Then, enter the minimum value in the Construct Domain(A).
In this case, 0.3 is input to both.
Enter the maximum value of the domain range in the Construct Domain(B).
This time, 0.8 is entered for both.
Then, connect each Construct Domain to the Construct Domain² (Dom²)(U and V).
We see that a domain range of 0.3~0.8 is created in the u and v directions, respectively.

Looking at the surfaces, we see that in each direction, the surfaces fall within the 0.3~0.8 range.
Thus, we can also determine the initial value of the domain range.
When Reparameterize is not used
If you do not use Reparameterize in Isotrim, you can directly enter the numerical value of the length in each direction.

For clarity, we will use the flat surface above.
The length of each of the two sides is 20 x 30.

When you were using Reparameterize, you had to enter a numerical value between 0~1.0.
However, when not Reparameterized, the actual lengths are entered.
In this case, the lengths of both sides are 30 and 20, so we connected 30 and 20 to the U and V, respectively.

Then the entire surface was extracted because it is the maximum length in each direction.

Let’s halve the two values to 15 and 10.

The lengths in each direction were halved, as shown here.
Thus, if you do not want to use Reparameterize, you can enter the length values directly.
List of Grasshopper articles using Construct Domain² (Dom²) component↓
Comment