Java-Gaming.org Hi !
 Featured games (91) games approved by the League of Dukes Games in Showcase (757) Games in Android Showcase (229) games submitted by our members Games in WIP (843) games currently in development
 News: Read the Java Gaming Resources, or peek at the official Java tutorials
 Home Help Search Login Register
Pages: [1]
 ignore  |  Print
 Computing volume  (Read 1231 times) 0 Members and 1 Guest are viewing this topic.
EliwoodL

Junior Devvie

Medals: 3
Exp: 8 years

 « Posted 2013-07-09 00:08:28 »

What I mean by the title is that I have a set of voxels that are arrayed so that they encompass a 3d space.  The question is, can I compute the volume of this space in an efficient way?

I thought of starting inside of the space and checking the 6 directions from the beginning, and then checking the spaces beyond those, and so on until they hit a voxel, but that seems very inefficient to me.

In any case, any pointers are greatly appreciated.
Mac70
 « Reply #1 - Posted 2013-07-09 00:32:58 »

Can this voxels be converted into simpler shapes like cubes or polyhedrons? If yes, calculating volume should be rather easy and based on simple formulas.
EliwoodL

Junior Devvie

Medals: 3
Exp: 8 years

 « Reply #2 - Posted 2013-07-09 00:50:50 »

I honestly wouldn't know how to figure that out.  How would I check to see if a voxel is an exterior corner, or an interior corner?  Like, if I had an L-shaped container?

Each Voxel is assigned to a group called a Component, and the type of Component determines what those voxels do.  For example, a Chamber component can contain liquids, while Containers can hold solid cargo, and Pipes, which can hold and transport liquids.

The volume calculation is important only to Chambers and Containers at present, and the player places the walls of the chamber or container; once the player saves the current set of voxels, a class builds a new in-game Component based on what the voxels would do.  That's why I need to be able to calculate irregular spaces, since odds are that players will be making irregular shapes.
 Games published by our own members! Check 'em out!
h3ckboy

JGO Coder

Medals: 5

 « Reply #3 - Posted 2013-07-09 07:59:55 »

Try using the trapezoid rule or a reiman sums? you could choose how accurate you got from the subintervals with the tradeoff being performance.
Pages: [1]
 ignore  |  Print

 EgonOlsen (42 views) 2018-06-10 19:43:48 EgonOlsen (22 views) 2018-06-10 19:43:44 EgonOlsen (43 views) 2018-06-10 19:43:20 DesertCoockie (197 views) 2018-05-13 18:23:11 nelsongames (124 views) 2018-04-24 18:15:36 nelsongames (123 views) 2018-04-24 18:14:32 ivj94 (863 views) 2018-03-24 14:47:39 ivj94 (124 views) 2018-03-24 14:46:31 ivj94 (768 views) 2018-03-24 14:43:53 Solater (140 views) 2018-03-17 05:04:08
 Java Gaming Resourcesby philfrei2017-12-05 19:38:37Java Gaming Resourcesby philfrei2017-12-05 19:37:39Java Gaming Resourcesby philfrei2017-12-05 19:36:10Java Gaming Resourcesby philfrei2017-12-05 19:33:10List of Learning Resourcesby elect2017-03-13 14:05:44List of Learning Resourcesby elect2017-03-13 14:04:45SF/X Librariesby philfrei2017-03-02 08:45:19SF/X Librariesby philfrei2017-03-02 08:44:05
 java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org