Grasshopper

algorithmic modeling for Rhino

Delete

one more question:

 

I had been using a hack that tried to correct the txtLines tool from http://www.giuliopiacentino.com/grasshopper-tools/

 

the hack is found here: http://fancywires.com/?p=499

 

it doesn't function the same as it used to, and i wonder if somethings have changed in the functions underlying the VB script or maybe some other updates to GH that are relevant.

 

furthurmore, i ask if anyone has made advancements on labeling techniques for cnc/laser cutting?

 

is there anything more built into GH to do this task?

 

Permalink Reply by Giulio Piacentino on Thursday

Yesterday I was asked a modified version of the script. Now it supports planes, so it should be easier to use.

- Giulio

Delete

cool! I also recently adapted the old version to use an input plane instead of a point... i'll have to look at your script to see if we made the same solution.

 

thanks for your reply... is there anyway that your script could take care of the hack that fancywires has made afterwards? it would be great to have each letter returned cleaned and joined, so there were exactly the same number of curves in the output as characters in the input...

 

i am basically clueless with VB and .net scripting so far, but i can code in AS3 and php, so a small push in the right direction might get me far...

How can one return one single curve in a letter like "O"? Do you mean using single-stroke fonts? Or maybe returning a brep (polysurface) as output?

- Giulio

 

Views: 744

Replies to This Discussion

Good question Giulio,

 

I am not sure what the best way to return the characters is. I guess you are familiar with the fancy wires hack though, right?

 

So that seems to remove all the extra curves/lines that result from connecting the ends of some characters.

 

It works quite ok, and i can wrap it into a cluster - no problem... its just fun to consider how the component could be most useful, logical, and consistent.

 

 

Any ideas?

Perhaps single curves isn't the way to think of it, but perhaps returning a single node in the data tree for each character, with how ever many curves it takes to make that character...

 

eg:

if pass in two "Sentances"

{0}

(0)ABC

{1}

(0)987

 

i get back cleaned characters (*) in this kind of tree:

{0;0}

(0)A part 1

(1)A part 2

{0;1}

(0)B part 1

... etc...etc

 

at the moment txtLines returns the exploded curves in a list:

{0;0}(N=4)

{0;1}(N=3)

 

* these curves include these unwanted end lines - shown in yellow here :


You might want to check out the def I posted over here:

 

http://www.grasshopper3d.com/forum/topics/simple-single-stroke-curv...

 

I made this for a CNC project I'm working on, and it's sped things up quite a bit.  It's made so that each character is represented by a single curve.

Hi David,

Its a very nice, clean, quick, simple approach. Thanks for sharing it.

 

Perhaps i can play around a bit with the path management, as I see you are flattening the input right away. 

 

This may not work for many of my applications as I am trying to be able to label multiple tree branches, often in a somewhat complex/interwoven system.

 

However, I will look into your solution in more detail, with fresh eyes, next time i sit down to focus on this...

 

cheers, gotjosh

One thing you can do is extract the data path for each object before you put it into the text component and then replace the branches on the other end after it's been flattened (using the group component is really useful for this).  You can retain your data structure pretty easily that way.  The trick I think is to do a graft before you extract the branch information so that you're ensured having a single element per branch.  See the attached...

Attachments:

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service