updated README

This commit is contained in:
Mason Green 2012-02-07 10:39:16 -05:00
parent 65b3d76ec8
commit 7561f1f5e2
2 changed files with 68 additions and 7 deletions

39
README
View File

@ -1,6 +1,35 @@
==================
INSTALLATION GUIDE
==================
#####################################################################################
###
### Since there are no Input validation of the data given for triangulation you need
### to think about this. Poly2Tri does not support repeat points within epsilon.
###
### * If you have a cyclic function that generates random points make sure you don't
### add the same coordinate twice.
###
### * If you are given input and aren't sure same point exist twice you need to
### check for this yourself.
###
### * Only simple polygons are supported. You may add holes or interior Steiner points
###
### * Interior holes must not touch other holes, nor touch the polyline boundary
###
### * Use the library in this order:
###
### 1) Initialize CDT with a simple polyline (this defines the constrained edges)
### 2) Add holes if necessary (also simple polylines)
### 3) Add Steiner points
### 4) Triangulate
###
### Make sure you understand the preceding notice before posting an issue. If you have
### an issue not covered by the above, include your data-set with the problem.
###
### The only easy day was yesterday; have a nice day. <Mason Green>
###
######################################################################################
===========================
TESTBED INSTALLATION GUIDE
===========================
------------
Dependencies
@ -15,7 +44,7 @@ Dependencies
- GLFW (http://glfw.sf.net)
- Python
Waf (http://code.google.com/p/waf/) is used to compile the testbed.
waf (http://code.google.com/p/waf/) is used to compile the testbed.
A waf script (86kb) is included in the repositoty.
----------------------------------------------
@ -48,4 +77,4 @@ Examples:
./p2t nazca_monkey.dat 0 0 9
./p2t random 10 100 5.0
./p2t random 1000 20000 0.025
./p2t random 1000 20000 0.025

View File

@ -39,6 +39,7 @@
#include <iostream>
using namespace std;
#include "test_shapes.h"
#include "../poly2tri/poly2tri.h"
using namespace p2t;
@ -114,7 +115,12 @@ int main(int argc, char* argv[])
}
vector<p2t::Point*> polyline;
for(int i = 0; i < 25; i++) {
polyline.push_back(new Point(outline[i*2],outline[i*2+1]));
}
/*
if(random_distribution) {
// Create a simple bounding box
polyline.push_back(new Point(min,min));
@ -148,6 +154,8 @@ int main(int argc, char* argv[])
}
}
*/
cout << "Number of constrained edges = " << polyline.size() << endl;
polylines.push_back(polyline);
@ -169,6 +177,27 @@ int main(int argc, char* argv[])
/*
* STEP 2: Add holes or Steiner points if necessary
*/
vector<Point*> hole1_pts;
vector<Point*> hole2_pts;
for(int i = 0; i < 22; i++) {
hole1_pts.push_back(new Point(hole1[i*2],hole1[i*2+1]));
}
cdt->AddHole(hole1_pts);
for(int i = 0; i < 10; i++) {
hole2_pts.push_back(new Point(hole2[i*2],hole2[i*2+1]));
}
cdt->AddHole(hole2_pts);
for(int i = 0; i < 42; i ++) {
cdt->AddPoint(new Point(steiner_points[i*2], steiner_points[i*2+1]));
}
/*
string s(argv[1]);
if(s.find("dude.dat", 0) != string::npos) {
// Add head hole
@ -190,7 +219,8 @@ int main(int argc, char* argv[])
cdt->AddPoint(new Point(x, y));
}
}
*/
/*
* STEP 3: Triangulate!
*/
@ -412,6 +442,8 @@ vector<Point*> CreateChestHole() {
}
double StringToDouble(const std::string& s)
{
std::istringstream i(s);