MURE
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Classes | Macros | Typedefs | Functions
Shape.hxx File Reference

Header file for Shape class and Shape_ptr type. More...

#include <iostream>
#include <fstream>
#include "MureHeaders.hxx"
#include <vector>
#include <string>

Go to the source code of this file.

Classes

class  Shape
 Base class to define shapes. More...
 

Macros

#define EPSILON   1e-10
 a small number to allow more +1 in Inclus and Disjoint More...
 

Typedefs

typedef Reference_ptr< ShapeShape_ptr
 

Functions

Shape_ptr operator& (Shape_ptr A, Shape_ptr B)
 Intersection of A and B. More...
 
Shape_ptroperator&= (Shape_ptr &A, Shape_ptr B)
 
Shape_ptr operator| (Shape_ptr A, Shape_ptr B)
 
Shape_ptroperator|= (Shape_ptr &A, Shape_ptr B)
 
Shape_ptroperator>> (Shape_ptr &B, Shape_ptr &A)
 
Shape_ptr operator! (Shape_ptr A)
 !A is an other way to obtain A->Not(). More...
 

Detailed Description

Header file for Shape class and Shape_ptr type.

Macro Definition Documentation

#define EPSILON   1e-10

a small number to allow more +1 in Inclus and Disjoint

Typedef Documentation

A Shape_ptr allows to have correct treatment of references to a Shape. This is needed in order to simplify Node trees without destroying a used Shape.

See Also
Shape
User Guide
Author
WEC
PTO
Version
1.0

Function Documentation

Shape_ptr operator! ( Shape_ptr  A)

!A is an other way to obtain A->Not().

Shape_ptr operator& ( Shape_ptr  A,
Shape_ptr  B 
)

Intersection of A and B.

Intersection of A and B. Syntax: A & B

Shape_ptr& operator&= ( Shape_ptr A,
Shape_ptr  B 
)

Intersection of A and B. Syntax: A &= B

Shape_ptr& operator>> ( Shape_ptr B,
Shape_ptr A 
)

Put the Shape(_ptr) B in A.

 //@ Syntax:  B>>A. 
 //@ Returns A to allow C>>B>>A;
 //@ Note:
 //@   The Translate/Rotate function will be applied on Inside Shape:
 //@   A->Translate(1,1,1);  will translate A, B and C.  
 //@
 //@   When doing C>>B>>A, IsnsideShape of A is C and B; idem for Original InsideShape
 //@  (fInsideShape[0]=C, fInsideShape[1]=B). 
 //@  if then A>>D; Original IsnsideShape of A are C and B, IsnsideShape of A have been cleared
 //@  and IsnsideShape of D are C, B and A.
 //
Shape_ptr operator| ( Shape_ptr  A,
Shape_ptr  B 
)

Union of A and B. Syntax: A | B

Shape_ptr& operator|= ( Shape_ptr A,
Shape_ptr  B 
)

Union of A and B. Syntax: A |= B


MURE Project, documentation generated by Doxygen 1.8.5 - Mon Nov 17 2014