RingMaker - make big cylinders - open source
|
Cadroe Murphy
Assistant to Mr. Shatner
Join date: 31 Jul 2003
Posts: 689
|
01-13-2005 10:18
Synergy - Basically the tool is letting you use a hollow value that won't work. Since each block can only be 10 meters long, a ring with a radius of 20 meters has to be hollow. The blocks can't reach 20 meters into the center to fill it in. If you change the hollow value from the default of 0 to one that the blocks can reach (.5 in this case, since half of 20 is 10), it does work out.
The tool isn't user-friendly enough and I'm going to try to improve it. For one thing, I now think it should automatically use a good hollow value when the radius is greater than 10 meters. For another, it should tell you when you don't have enough blocks to reach around the ring (12 sides isn't enough to make a ring 20 meters wide).
EDIT - OK, v1.03 now forces an appropriate hollow value when you set the radius to greater than 10 meters. But you can then override it with the hollow command if you want.
_____________________
ShapeGen 1.12 and Cadroe Lathe 1.32 now available through SLExchange.
|
Synergy Belvedere
Prim Reaper
Join date: 7 Jul 2004
Posts: 253
|
01-14-2005 10:41
Ok so the pointy ends are a result of not using enough sides to make the circle then right?
|
Olympia Rebus
Muse of Chaos
Join date: 22 Feb 2004
Posts: 1,831
|
01-14-2005 20:32
From: Cadroe Murphy OK, I changed it so the scripts are deleted from the blocks automatically when they're frozen in place. I also added a star mode which basically flips the blocks pointy side out. I attached a pic in case that's not clear. If you want a new version you can IM me and I'll drop it on you. Wow! More features! WTG Cadroe 
|
Ardith Mifflin
Mecha Fiend
Join date: 5 Jun 2004
Posts: 1,416
|
01-14-2005 20:47
Cadroe,
This is easily one of my favorite Free tools here in SL. Very nice work, and very generous of you to give it away to the community.
|
Cadroe Murphy
Assistant to Mr. Shatner
Join date: 31 Jul 2003
Posts: 689
|
01-17-2005 12:39
Thanks guys  I added tilted rings, spheres and tori. By tilted ring I mean a horizontal slice of a cone. With the tori you can specify the radius of the big ring and the radius of the cross section. I attached a couple pics of a big torus (radius 10m, torus radius 3m, 16 sides, 256 total prims). I'm going to call this version ShapeMaker and it will probably be ready on Tuesday - I'll let you know. I just got excited about getting the torus to work and had to come share.
_____________________
ShapeGen 1.12 and Cadroe Lathe 1.32 now available through SLExchange.
|
Eddie Escher
Builder of things...
Join date: 11 Jul 2003
Posts: 461
|
01-18-2005 05:52
Cadroe, you rock 
_____________________
Eddie Escher ...apparently 3 out of 4 people make up 75% of the population here...Eddie Escher Gadgets & Skins: Hotei and Seacliff
|
Dallas Moreau
Registered User
Join date: 7 Dec 2004
Posts: 146
|
01-18-2005 20:00
I got the old one. I want the Shapemaker. (drools)
|
Cadroe Murphy
Assistant to Mr. Shatner
Join date: 31 Jul 2003
Posts: 689
|
01-19-2005 14:21
Well ShapeMaker is beta. I've been using it myself. It's got some quirks but it's functional. If anyone wants to beta test it, just IM me and I'll give you one. I'll put it out in Ohno once a couple people have tried it. I'm just going to put the readme here again.
********* ShapeMaker is provided without support, as is. I'd like to hear about problems, but I can't commit to solving them. The code is free to use, copy, adapt or resell.
ShapeMaker automatically forms and combines a number of box prims to create rings (and cones), spheres (and domes) and tori. This allows you to make shapes larger than 10 meters, or smaller shapes with faceted sides. Rings (cylinders) are made differently than spheres and tori. With rings you can adjust the attributes of the ring after the blocks are rezzed, then freeze them in place when you're done. With spheres and tori, you set the parameters and then generate the shape all at once. No adjustment is possible.
ShapeMaker listens to commands from its owner on channel 12. By default it uses itself as the center of the created shape, but you can tell it to move the center above or below it (zoffset). It's probably best to experiment with rings before using sphere and torus. The commands are listed below.
Ring: To create a ring first rez the blocks with "/12 rez". Then adjust the parameters and freeze the blocks in place with "/12 freeze". Unlike with RingMaker, the radius of a ring is the center of the building blocks. Instead of a hollow parameter, you set the width of the blocks from innner edge to outer edge. This requires a litte thinking about where you want outer and inner edges to fall (yeah, it is lame). You can tilt the sides of a ring (i.e. make a cone) with the tilt command.
Sphere: To create a sphere set the parameters and say "/12 sphere". Be aware that a sphere extends downward as well as upward, and that it uses a lot of prims. You can create a section of a sphere (a dome) with the arcsides command. Set arscides to the number of vertical rings you want to generate, from top to bottom.
Torus: To create a torus set the parameters and say "/12 torus". Use "radius" to set the radius of the greater ring, and "tradius" to set the radius of the torus cross section. Be aware that the number of prims it uses is the number of sides squared (e.g. 16 sides = 256 prims. You can create a section of a torus with the arcsides command. This is not a section of the greater ring, but of the ring forming the cross section. Set arcsides to the number of sides to rez, from the outer side at 3 o'clock going counter clockwise.
Notes: There is a bug that sometimes causes the blocks in rings to fail to align or to form properly after you adjust something. It seems to go away if you reset, form a default ring, and then adjust from here. The shapes are made to line up on the inner edge - there will be "seams" between edges visible on the exteriors. In a laggy sim, blocks can get stuck and no longer obey RingMaker.
Commands:
sides x ( Set the number of sides to x ) radius x ( Set the radius to x - !note that radius is the center of the blocks ) tradius x ( Set the radius of the torus cross section to x) thickness x ( Set the thickness of the blocks to x ) zoffset x (Places center of shape x meters above or below RingMaker ring ( Move the pieces into a ring shape ) sphere (Rez the blocks and move them into a sphere shape) torus (Rez the blocks and move them into a torus shape) arcsides x (The number of sides to generate out of the total - does not work with rings) report ( Report the parameters ) reset ( Resets to default values ) color x y z (Set all the building block colors to x, y, z - numbers between 0 and 255)
THESE commands apply only to rings. width x ( Set the width of the blocks to x - only applies to rings) tilt x (Set the angle to tilt the sides of the ring to x - between -90 and 90 degrees) rez ( Rez the building blocks - only applies to rings ) freeze ( Tell all the building blocks to stop listening - this is their final position) delete ( Delete all the building blocks - applies only to rings name x ( Set all the building block names to x - no spaces or underscores in name)
_____________________
ShapeGen 1.12 and Cadroe Lathe 1.32 now available through SLExchange.
|
Tiger Crossing
The Prim Maker
Join date: 18 Aug 2003
Posts: 1,560
|
01-19-2005 15:14
I'll have to pick up the new multi-tool, but I was playing with the ring maker the other night. It's quite good, the main feature I liked over Xylor's old ring maker was the ability to modify the ring after rezing it. Much nicer than deleting it and creating a whole new one. I do have a few suggestions, though (some I wanted for Xylor's tools too): 1) You might think about using parallel processing to your advantage. Instead of putting the guts of the calculations in the main prim and adressing each rendered prim with its specific information one at a time... You could put the guts into the rendered prims, and just transmit the parameters to them all in one silent shout. The result would be the simultaneous move of all prims to new positions when a parameter changes. 2) Textures... You have the color setting in there, it would be nice to be able to control the textures too. If you wanted to get REALLY fancy, accept a list of keys that would get applied to the individual sides. To get even MORE fancy, modify the UV coords of each piece so that you can tile a single texture over the whole shape, or give each piece a random UV and rotation while maintaing scale. 3) Accept an entire parameter set in a single command, and print out the current settings inthe same format. This way, you can save off contruction you like, and later revive them with a single cut paste. It's open source (which is great for the community, thank you) so anyone (even I) could add such features. 
_____________________
~ Tiger Crossing ~ (Nonsanity)
|
Cadroe Murphy
Assistant to Mr. Shatner
Join date: 31 Jul 2003
Posts: 689
|
01-19-2005 15:55
Tiger - I've thought about those kinds of things in general, but thanks for laying them out so clearly. Your suggestion 2 is the one I figure is the highest priority. There's no reason I can't allow full editing of the blocks through the tool. I'm already passing values along to llSetPrimParams, so I could pass all the others. For texturing, I thought it'd be nice to be able to say something like "texture Plywood outside", where Plywood is the name of a texture dropped in inventory, and outside means the faces on the outer surface of the shape. I'll probably add the simple stuff first  I don't know how to map a 2d image to a 3d surface yet. I'll look into putting calculations in the blocks. It makes sense, but it would require some work. I'm going to run out of room in that single script anyway. I see what you're saying about accepting an entire parameter set in a single command. I guess I could add that quickly just by adding a symbol for the end of a statement, and allowing mutliple statements per line. What I had been planning already was a seperate generic little tool for saying the contents of a note card line by line on a specificed channel. Then, if nothing else, you could write a set of commands in a note card and have them read back to the tool. Thanks again for the suggestions.
_____________________
ShapeGen 1.12 and Cadroe Lathe 1.32 now available through SLExchange.
|
Alby Yellowknife
Sic Semper Tyrannis
Join date: 5 Jun 2004
Posts: 1,148
|
01-21-2005 11:22
Any danger (other than prim usage) in making rings with 360 triangles or more?
|
Cadroe Murphy
Assistant to Mr. Shatner
Join date: 31 Jul 2003
Posts: 689
|
01-21-2005 14:57
From: Alby Yellowknife Any danger (other than prim usage) in making rings with 360 triangles or more? You mean 360 sides or more? I don't know. But it would take a very large shape to make that kind of detail apparent. I should probably put something in there that will tell you how many prims a sphere or torus will use at the current settings.
_____________________
ShapeGen 1.12 and Cadroe Lathe 1.32 now available through SLExchange.
|
Alby Yellowknife
Sic Semper Tyrannis
Join date: 5 Jun 2004
Posts: 1,148
|
01-22-2005 06:09
From: Cadroe Murphy You mean 360 sides or more? I don't know. But it would take a very large shape to make that kind of detail apparent. I should probably put something in there that will tell you how many prims a sphere or torus will use at the current settings. OKay, I did notice that (sides) in the 180-360 range don't build a complete circle. I think it might extend back to 91+, but I didn't run tests on every single number.. But when I tried using 180 or 360, it only built a partial circle. I guess I should also say it was a radius of 15+
|
Cadroe Murphy
Assistant to Mr. Shatner
Join date: 31 Jul 2003
Posts: 689
|
01-23-2005 05:50
That's interesting. I'll have to look into why it does that. I've never used more than 36 sides for a ring myself. A ring with 36 sides each 10 meters wide has a radius of about 57 meters, or 114 meters across. In a ring with 360 sides and a radius of 15 meters, each side will be about .261 meters wide. I wish there were a way to check prims left on a parcel in code.
_____________________
ShapeGen 1.12 and Cadroe Lathe 1.32 now available through SLExchange.
|
Reitsuki Kojima
Witchhunter
Join date: 27 Jan 2004
Posts: 5,328
|
01-23-2005 07:09
I can confirm this bug exists, but I can't nail down any sort of a pattern beyond number of sides used. I was testing this in Island Sandbox, which was empty at the time, or nearly so, so it wasn't prim limit by any stretch of the imagination... a 360-side ring with a radius of 80 meters only built a quarter-circle.
|