Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/boundary.hpp

    r2319ed r8c54a3  
    5454
    5555    void AddTriangle(class BoundaryTriangleSet *triangle);
    56     bool IsConnectedTo(class BoundaryLineSet *line);
    57     bool ContainsBoundaryPoint(class BoundaryPointSet *point);
    58     bool CheckConvexityCriterion(ofstream *out);
    5956
    6057    class BoundaryPointSet *endpoints[2];
     
    7168
    7269    void GetNormalVector(Vector &NormalVector);
    73     bool GetIntersectionInsideTriangle(ofstream *out, Vector *MolCenter, Vector *x, Vector *Intersection);
    74     bool ContainsBoundaryLine(class BoundaryLineSet *line);
    75     bool ContainsBoundaryPoint(class BoundaryPointSet *point);
    7670
    7771    class BoundaryPointSet *endpoints[3];
     
    8478class CandidateForTesselation {
    8579  public :
    86   CandidateForTesselation(atom* candidate, BoundaryLineSet* currentBaseLine, Vector OptCandidateCenter, Vector OtherOptCandidateCenter);
    87   ~CandidateForTesselation();
    88   atom *point;
    89   BoundaryLineSet *BaseLine;
    90   Vector OptCenter;
    91   Vector OtherOptCenter;
     80        CandidateForTesselation(atom* candidate, BoundaryLineSet* currentBaseLine, Vector OptCandidateCenter, Vector OtherOptCandidateCenter);
     81        ~CandidateForTesselation();
     82        atom *point;
     83        BoundaryLineSet *BaseLine;
     84        Vector OptCenter;
     85        Vector OtherOptCenter;
    9286};
    9387
     
    9993    ~Tesselation();
    10094
    101     void TesselateOnBoundary(ofstream *out, molecule *mol);
     95    void TesselateOnBoundary(ofstream *out, config *configuration, molecule *mol);
    10296    void GuessStartingTriangle(ofstream *out);
    10397    void AddPoint(atom * Walker);
     
    110104    int CheckPresenceOfTriangle(ofstream *out, atom *Candidates[3]);
    111105    void Find_next_suitable_point_via_Angle_of_Sphere(atom* a, atom* b, atom* c, atom* Candidate, atom* Parent, int RecursionLevel, Vector *Chord, Vector *direction1, Vector *OldNormal, Vector ReferencePoint, atom*& Opt_Candidate, double *Storage, const double RADIUS, molecule* mol);
    112     class BoundaryTriangleSet * FindClosestTriangleToPoint(ofstream *out, Vector *x);
    113     bool IsInside(Vector *pointer);
    114     bool InsertStraddlingPoints(ofstream *out, molecule *mol);
    115     bool CorrectConcaveBaselines(ofstream *out);
     106    list<atom*> *getClosestConnectedAtoms(atom* Atom, atom* AtomToCheck);
     107    list<BoundaryTriangleSet*> *FindTriangles(atom* TrianglePoints[3]);
    116108
    117109    PointMap PointsOnBoundary;
     
    134126
    135127
    136 double VolumeOfConvexEnvelope(ofstream *out, class Tesselation *TesselStruct, class config *configuration);
     128double VolumeOfConvexEnvelope(ofstream *out, const char *filename, config *configuration, Boundaries *BoundaryPoints, molecule *mol);
    137129double * GetDiametersOfCluster(ofstream *out, Boundaries *BoundaryPtr, molecule *mol, bool IsAngstroem);
    138130void PrepareClustersinWater(ofstream *out, config *configuration, molecule *mol, double ClusterVolume, double celldensity);
    139 molecule * FillBoxWithMolecule(ofstream *out, MoleculeListClass *List, molecule *filler, config &configuration, double distance[NDIM], double RandAtomDisplacement, double RandMolDisplacement, bool DoRandomRotation);
    140 void Find_convex_border(ofstream *out, molecule* mol, class Tesselation *&TesselStruct, class LinkedCell *LCList, const char *filename);
    141131void Find_non_convex_border(ofstream *out, molecule* mol, class Tesselation *T, class LinkedCell *LC, const char *tempbasename, const double RADIUS);
    142132void Find_next_suitable_point(class BoundaryTriangleSet *BaseTriangle, class BoundaryLineSet *BaseLine, atom*& OptCandidate, Vector *OptCandidateCenter, double *ShortestAngle, const double RADIUS, LinkedCell *LC);
     
    144134bool existsIntersection(Vector point1, Vector point2, Vector point3, Vector point4);
    145135bool sortCandidates(CandidateForTesselation* candidate1, CandidateForTesselation* candidate2);
     136bool IsInnerPoint(Vector Point, class Tesselation *Tess, LinkedCell* LC);
     137bool IsInnerAtom(atom *Atom, class Tesselation *Tess, LinkedCell* LC);
     138atom* findClosestAtom(const atom* Atom, LinkedCell* LC);
     139double getAngle(Vector point, Vector reference, Vector center, Vector OrthogonalVector);
    146140
    147141#endif /*BOUNDARY_HPP_*/
Note: See TracChangeset for help on using the changeset viewer.