Mesh Colours]. It takes a single mesh and a list of colour values, one for each vertex (well actually it will cycle the colour list, but you want to provide one colour per vertex).
If you want to make an image (ie. an actual bitmap) by setting pixels, there are more efficient ways of achieving that, although that will require custom scripting and you won't be able to preview the data in GH or Rhino.
Finally, if you want to format a bunch of data into a comma separated list or some other kind of template, your best bet is usually the [Format] component. You'll need to increase the number of inputs to cater for all your data (6 in your case), decompose the points into XYZ values and decompose the colours into RGB values. Then you plug the x, y and z values into the 0, 1 and 2 inputs respectively, and the r, g and b values into 3, 4 and 5. Then the format you'll need will be something like:
{0}, {1}, {2}, {3}, {4}, {5}
Or, if you want to display all point coordinates with exact three decimals:
{0:0.000}, {1:0.000}, {2:0.000}, {3}, {4}, {5}
Or if you want to use semicolons to separate the point values from the colour values:
{0}, {1}, {2}; {3}, {4}, {5}
etc. etc.
…
formula says "Syntax error: Right hand value of operator ( is Null."
Any insights into why the formula isn't working?
Here is the formula that is plugged into the y-coordinate:
(-1/15)*Sin(u)*(3*Cos(v)-3*(Cos(u))^2*Cos(v)-48*(Cos(u))^4*Cos(v)+48(Cos(u))^6*Cos(v)-60*Sin(u)+5*Cos(u)*Cos(v)*Sin(u)-5*(Cos(u))^3*Cos(v)*Sin(u)-80*(Cos(u))^5*Cos(v)*Sin(u)+80*(Cos(u))^7*Cos(v)*Sin(u))
Here is the link to Wikipedia to see the formula:
https://en.wikipedia.org/wiki/Klein_bottle
Thanks for your time,
August…
me. Im not sure that using using 4pt surface component would be the best solution, especially when it comes to more complex point clouds.
I thought that maybe it could be possible to create surfaces from all the points and then cull the inside surfaces to keep the outside solid shape only.
In the same idea, could it be possible to get the outline of a point cloud.
In the current definition points 5 8 2 0 7 9 3 5, seen from top view define the outline curve of the point cloud (imagining that points have no Z value)
Thank you for your help…
pe and its surface.
However, I don't have that much knowledge about both grasshopper and Mathematica.. I mean I can only make assumptions and think about relations of certain functions but that's all.
If you can help me on this, I would appreciate it so much.
You can see a screenshot of the code and model of the demonstration from mathematica in attachment.
And here is the mathematica code;
Manipulate[ Module[{\[CurlyEpsilon] = 10^-6, c1 = Tan[a1], c2 = Tan[a2], c3 = Tan[a3], c4 = Tan[a4], c5 = Tan[a5], c6 = Tan[a6]}, ContourPlot3D[ Evaluate[ c6 Sin[3 x] Sin[2 y] Sin[z] + c4 Sin[2 x] Sin[3 y] Sin[z] + c5 Sin[3 x] Sin[y] Sin[2 z] + c2 Sin[x] Sin[3 y] Sin[2 z] + c3 Sin[2 x] Sin[y] Sin[3 z] + c1 Sin[x] Sin[2 y] Sin[3 z] == 0], {x, \[CurlyEpsilon], Pi - \[CurlyEpsilon]}, {y, \[CurlyEpsilon], Pi - \[CurlyEpsilon]}, {z, \[CurlyEpsilon], Pi - \[CurlyEpsilon]}, Mesh -> False, ImageSize -> {400, 400}, Boxed -> False, Axes -> False, NormalsFunction -> "Average", PlotPoints -> ControlActive[10, 30], PerformanceGoal -> "Speed"]], {{a1, 1, "\!\(\*SubscriptBox[\(\[Alpha]\), \(1\)]\)"}, -Pi/2 - 0.01, Pi/2 + 0.01, ImageSize -> Tiny}, {{a2, 1, "\!\(\*SubscriptBox[\(\[Alpha]\), \(2\)]\)"}, -Pi/2 - 0.01, Pi/2 + 0.01, ImageSize -> Tiny}, {{a3, 1, "\!\(\*SubscriptBox[\(\[Alpha]\), \(3\)]\)"}, -Pi/2 - 0.01, Pi/2 + 0.01, ImageSize -> Tiny}, {{a4, 1, "\!\(\*SubscriptBox[\(\[Alpha]\), \(4\)]\)"}, -Pi/2 - 0.01, Pi/2 + 0.01, ImageSize -> Tiny}, {{a5, 1, "\!\(\*SubscriptBox[\(\[Alpha]\), \(5\)]\)"}, -Pi/2 - 0.01, Pi/2 + 0.01, ImageSize -> Tiny}, {{a6, 1, "\!\(\*SubscriptBox[\(\[Alpha]\), \(6\)]\)"}, -Pi/2 - 0.01, Pi/2 + 0.01, ImageSize -> Tiny}, AutorunSequencing -> {1, 3, 5}, ControlPlacement -> Left]…
he size length and again leave the origin to 0,0,0
3)drop n offset component, connect the output c form the polygon to the input c of the offset and attach an slider to the offset value, leave the plane as it is
4) drop a fillet slider and attach an slider to the fillet radius, set the c output from the polygon as input
5) drop a Z vector and attach an slider to the number
6) drop an extrude component, set the circle, offset curve and filleted polygon as inputs and attach the Z vector to the extrude direction.
7) the slider will give you the parameters to play with.
Something like that, the enclosed should get you started!
I hope this helps
Cheers and sorry! hasn't been the best of days
evert…
Added by Evert Amador at 9:45am on October 22, 2010
s the input is Amplitude?)
4 - Sometimes you need to build a domain and sometimes deconstruct the domain (f. ex.: remap values and gradient)
5 - Components names - typing deconstruct 999 times a day is terrible.…
nts and decompose them
4. use f(x) component with formula "If x=0,true,false"
5. take Z values from point decomposition, and input it as x value in f(x)
6. use cull pattern , as pattern provide values produces with fx, list to cull is our brep edges from brep explosion
END
Other possibility, maybe more flexible :
1. explode brep
2. compute area of faces (from F output) (area component)
3. get C (centroids)
4. sort list from C with sort list component(as K again provide Z values of centroid points)
5. as A input provide faces of exploded brep
6. use list item component with A output from sort list
7. now use brep wireframe on face outputted with list item component - thats your curve…
"
Even if the output is still a string, when you connect it to a point parameter, it will be converted to a 3d point. In future versions the {} won't be needed.
If your csv file has more data besides the points, and say the points are the 4th, 5th and 6th numbers, use this code:
Dim str_list() As String
str_list = data.split(",")
data = "{" & str_list(3) & "," & str_list(4) & "," & str_list(5) & "}"
…
Added by Vicente Soler at 11:27am on September 3, 2009
W, X, Y, Z}
----------------------------------------
and if I set this
SetA = {U, V, W, X, Y, Z}
SetB = {1, 2, 3}
Imap = {2, 2, 2}
I will get this?
result = {U, V, 3, 2, 1, W, X, Y, Z}
----------------------------------
And what if I set this?:
SetA = {U, V, W, X, Y, Z}
SetB = {1, 2, 3}
Imap = {2, 2}…
Added by Frane Zilic at 3:26pm on September 10, 2010