donal-s / SpatialKappa

An implementation of spatial language extensions to Kappa
Other
4 stars 9 forks source link

Allow definition of more complex geometries through union of compartments #5

Open donal-s opened 11 years ago

donal-s commented 11 years ago

From discussion with Oksana:

The current geometric primitives (spheres, cuboids, cylinders, etc) are abstractions of sets of voxels in a 3D grid. Assuming the voxels are intended to be of equal size in 2 compartments, it should be possible to combine multiple primitives into a single compartment of more complex geometry. For example, combining a sphere and a cylinder.

If it was to be useful, I guess the standard combination operators union, intersection and difference would be used (similar to the same operators in Java2D). Would also need to be able to describe the orientation and offset of the compartments to be composed relative to each other.

As an alternative, allowing specification of a compartment by identifying all the voxels that make it up individually could be a useful (if incredibly tedious) option.

Finally, a means of storing the composition in a kappa file or elsewhere would allow a library of shapes to be built up.

Comments ? Does anyone actually have a need for the feature ?

lptolik commented 11 years ago

Hi, I would need such features as manual definition and storage of the compartment definitions for translation model: DNA could be presented as a cylinder formed by four helical stripes of different properties - two grooves and two phosphate backbones.

Cheers, Anatoly

On Sun, Sep 16, 2012 at 2:59 AM, donal-s notifications@github.com wrote:

From discussion with Oksana:

The current geometric primitives (spheres, cuboids, cylinders, etc) are abstractions of sets of voxels in a 3D grid. Assuming the voxels are intended to be of equal size in 2 compartments, it should be possible to combine multiple primitives into a single compartment of more complex geometry. For example, combining a sphere and a cylinder.

If it was to be useful, I guess the standard combination operators union, intersection and difference would be used (similar to the same operators in Java2D). Would also need to be able to describe the orientation and offset of the compartments to be composed relative to each other.

As an alternative, allowing specification of a compartment by identifying all the voxels that make it up individually could be a useful (if incredibly tedious) option.

Finally, a means of storing the composition in a kappa file or elsewhere would allow a library of shapes to be built up.

Comments ? Does anyone actually have a need for the feature ?

— Reply to this email directly or view it on GitHubhttps://github.com/donal-s/SpatialKappa/issues/5.

Anatoly Sorokin, PhD Research Fellow Mechanism of Cell Genome Functioning Group Phone: +7(4967)739319 E-mail: lptolik@gmail.com Institute of Cell Biophysics RAS, 4, Institutskaya str. Pushcino, Moscow region Russia, 142290