Grasshopper

algorithmic modeling for Rhino

hi guys, I am trying to rebuild surface cell's point to match with any given curve that is on the surface, basically this is the starting surface I have (with Grid line shown in green) =

then I introduce 2 curves that run across the surface =

and then with simple definition I rearrange my closest grid points to snap onto the new curves and let the rest of the points to adjust so that it has even distribution distance between points =

(notice that I don't want to have the UV to follow the curve direction. so I can get different numbers of point in-between those 2 curves). so far so good, but....

the problem comes when I try to rebuild the cell, each cell border will have this skewed look =

this problem can be solved by manually readjusting the numbers of UV grid and by sliding the grid along UV line, so I think it is time to use the galapagos, so I introduce 4 genomes pool to start with =

a) genome: numbers of Srf division in U direction (slider)

b) genome: numbers of Srf division in V direction (Slider)

c) genome: Graph Mapper to slide edges along U direction (custom GraphMapper)

d) genome: Graph Mapper to slide edges along V direction (custom GraphMapper)

I tried to then run the galapagos solver, I basically run 2 test.

the first one is by enabling all the genome except the number of UV Grid.Galapagos only allows edges to slides along the Surface, however the result is not as I expected, it is still a "skewed" grid =

and the 2nd test which enabling Galapagos to control the number of points in UV grid as well as letting the edges slide along the surface.the result is still not right =

maybe there is something wrong with the way I try to define the fitness value, just for comparison,this is the result I adjust it myself (manually dragging the sliders), it is not the best but at least the cell grid is more "tidy"=

If it is possible for you guys to give me a little insight, maybe you have a better logic to define the fitness value? I want to have 2 option for galapagos to solve =

1. rearrange the grid, however the grid should be almost square.

2. rearrange the grid, allows the grid to be either square or rectangle.

how to define this logic? because I think my current logic for fitness value does not work.

I was thinking of doing it with kangaroo but I want the grid to still follows the original surface. If I do mesh relaxation in kangaroo, the Grid would be detached from original surface and probably will have creases near the 2 curves.

thank you very much for reading this long post. I hope you can help me out :)

Views: 2121

Replies to This Discussion

sorry riccardo, I did't realize your first option is  in the same file as the 2nd one. your first option is done by having a new UV that follows the curve. which is good for most of the case, however, the kind of mullion I am stuck with right now requires no change on the original UV.

pardon for being so demanding about this.

cheers, Runnie

actually I found your 2nd option quite interesting. perhaps I can use that next time :)

Hi, Peter and Riccardo.

I guess I might just give you the complete GH definition I made from the very beginning, so you can see the process. the file is a big mess but I hope it's helpful for you

what I want is a definition to optimize an existing Surface Grid to match with any curves that I put on the surface.

let's just say I have this existing Surface UV during the first stage of the design=

and then somehow, I want to cut this surface. so I made 2 boundary curves represent the boundary in which the surface will be trimmed later.

if I did not change my UV Grid, the mullion will not be trimmed right at their intersection point 

the goal is to reconstruct a new Grid Cell that still inherit the original surface UV direction, but have different UV interval.

this optimization technique so far I have seen in Kangaroo and Evolute Tool. and I have no plan to purchase evolute so I hope I can achieve the same technique with Galapagos.

here I attached my full definition. pardon for the big mess in that file. because I havent got time to tidy it up.

I will study both your definition first (Riccardo and Peter). and try to digest it first :)

I hope u get what I mean

Attachments:

I know this will be a stupid comment...

With only 1 curve maybe it would be easier, but with 2 curves, "moving floor" is no more useful.

Like... we can't draw a rectangle that have 2 points on curve A and 2 points on curve B...

the 2 curves simply block us here.... I would want to shear a little bit the final grid somewhere, at least...

Again then... why this wouldn't be good?

I mean, you want only an "orthogonal" grid, we can move the isocurves, and just the curves need to go through grid intersections...

Due I still can't completely understand or find the starting way to engage this problem... let's start with you telling me why this is not ok :P

hi ricardo. sorry for the late reply, there is a big time difference between my place and yours so I can only read your message when it is probably night in your country..

mmm basically that is the thing I want yes. :))) thank your for the time u have spent to help me with this. now that everything seems to be okay we can move to the next step :))

the next step is try to introduce a "tolerance" perhaps a slider to control the tolerance so the point grid does not have to be exactly on the curve. (it can be slightly off depending on the tolerance value we assign) because, afterall,  you are right, there is no way we can get a good panelling result without using triangular grid. do we still need galapagos somehow to approach that? :)I am really curious how we can put galapagos into this, but if you think that is unnecessary perhaps we dont have to.

I tried using similar method with kangaroo. it produces some sheared cell in some areas=

the problem with kangaroo is that I still have to adjust the tolerance control manually, it takes time, since the purpose of this definition is to aid during the modelling process, is there a way of using Galapagos to find a solution so we don't have to adjust the slider by hand?

also I don't know yet how to give various UV interval in kangaroo. I will try again later at night after work

for other people who might read this discussion = maybe this is just a simple panelling issue, but we deal with this exact thing in most of the design we produce.

before I never really care about 3D detail and let other people do the job. but since I am getting to know GH more and more I am very keen to produce a 3D that is good enough not to get insulted by engineering team

for that reason I am so sorry if I have been a little bit noisy lately..

and for riccardo, sorry for being too demanding about this issue. thank you bro, you have been very helpful. thank you very muchhh as in chinese, XIE XIE :)))) I will see what I can do tonight to also think about this issue.

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service