1 | /*
|
---|
2 | * Project: MoleCuilder
|
---|
3 | * Description: creates and alters molecular systems
|
---|
4 | * Copyright (C) 2010 University of Bonn. All rights reserved.
|
---|
5 | * Please see the LICENSE file or "Copyright notice" in builder.cpp for details.
|
---|
6 | */
|
---|
7 |
|
---|
8 | /**
|
---|
9 | * \file shapes.dox
|
---|
10 | *
|
---|
11 | * Created on: Oct 28, 2011
|
---|
12 | * Author: heber
|
---|
13 | */
|
---|
14 |
|
---|
15 | /** \page shapes Shapes
|
---|
16 | *
|
---|
17 | * Shapes are present for denoting a specific region of the simulation domain.
|
---|
18 | * There are four primitive types present:
|
---|
19 | * - Sphere
|
---|
20 | * - Ellipsoid
|
---|
21 | * - Cuboid
|
---|
22 | * - Cylinder
|
---|
23 | *
|
---|
24 | * Note that all may be modified (shrink/grow, rotate, morph) via an arbitrary
|
---|
25 | * matrix.
|
---|
26 | *
|
---|
27 | * The shapes are for the moment only used within \ref descriptors to specify
|
---|
28 | * a specific subset of atoms, here that reside in a certain region of the
|
---|
29 | * simulation domain.
|
---|
30 | *
|
---|
31 | * \todo There is a certain relation between Tesselation and Shape. Hence, later
|
---|
32 | * Tesselation shall itself be a Shape, i.e. that describes a certain region in
|
---|
33 | * space, here via a tesselated mesh.
|
---|
34 | *
|
---|
35 | * \section shapes-constructive-geometry Constructive Geometry
|
---|
36 | *
|
---|
37 | * Again, Shapes can be joined via boolean operators:
|
---|
38 | * - add
|
---|
39 | * - or
|
---|
40 | * - not
|
---|
41 | *
|
---|
42 | * And thus are a very powerful concept called constructive geometry.
|
---|
43 | *
|
---|
44 | * E.g. a shape can be used like this
|
---|
45 | * \code
|
---|
46 | * Cuboid(Vector(0,0,0), Vector(2,2,2)) && !Sphere(Vector(1,1,1), 1.)
|
---|
47 | * \endcode
|
---|
48 | * which would match any object within the cuboid from (0,0,0) to (2,2,2)
|
---|
49 | * that is not in the unit sphere at (1,1,1).
|
---|
50 | *
|
---|
51 | *
|
---|
52 | * \date 2014-03-10
|
---|
53 | *
|
---|
54 | */
|
---|