nothing...
This commit is contained in:
parent
03863f15b8
commit
1f5315d09f
|
|
@ -28,7 +28,7 @@ int main(int argc, char *argv[]) {
|
||||||
for(unsigned int y = 0; y < side; y++) {
|
for(unsigned int y = 0; y < side; y++) {
|
||||||
Point3f p(x*x*x/((float)side),
|
Point3f p(x*x*x/((float)side),
|
||||||
y*y*y/((float)side), x*y/((float)side));
|
y*y*y/((float)side), x*y/((float)side));
|
||||||
crude.GetVertex(x + side * y) = p;
|
crude.SetVertex(x + side * y, p);
|
||||||
crude.GetBox().Add(p);
|
crude.GetBox().Add(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -36,10 +36,10 @@ int main(int argc, char *argv[]) {
|
||||||
for(unsigned int y = 0; y < side-1; y++) {
|
for(unsigned int y = 0; y < side-1; y++) {
|
||||||
unsigned int pos = x + side*y;
|
unsigned int pos = x + side*y;
|
||||||
Crude::Face face(pos, pos + 1, pos + side);
|
Crude::Face face(pos, pos + 1, pos + side);
|
||||||
crude.GetFace(0 + 2*x + (side-1)*y*2) = face;
|
crude.SetFace(0 + 2*x + (side-1)*y*2, face);
|
||||||
|
|
||||||
face = Crude::Face(pos + 1, pos + 1 + side, pos +side);
|
face = Crude::Face(pos + 1, pos + 1 + side, pos +side);
|
||||||
crude.GetFace(1 + 2*x + (side-1)*y*2) = face;
|
crude.SetFace(1 + 2*x + (side-1)*y*2, face);
|
||||||
}
|
}
|
||||||
|
|
||||||
crude.Close();
|
crude.Close();
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,9 @@
|
||||||
History
|
History
|
||||||
|
|
||||||
$Log: not supported by cvs2svn $
|
$Log: not supported by cvs2svn $
|
||||||
|
Revision 1.23 2004/11/28 07:58:49 ponchio
|
||||||
|
*** empty log message ***
|
||||||
|
|
||||||
Revision 1.22 2004/11/28 04:14:12 ponchio
|
Revision 1.22 2004/11/28 04:14:12 ponchio
|
||||||
*** empty log message ***
|
*** empty log message ***
|
||||||
|
|
||||||
|
|
@ -46,8 +49,7 @@ Revision 1.16 2004/10/22 14:31:56 ponchio
|
||||||
Some controls added.
|
Some controls added.
|
||||||
|
|
||||||
Revision 1.15 2004/10/21 12:22:21 ponchio
|
Revision 1.15 2004/10/21 12:22:21 ponchio
|
||||||
Small changes.
|
Small change
|
||||||
|
|
||||||
Revision 1.14 2004/10/19 04:23:29 ponchio
|
Revision 1.14 2004/10/19 04:23:29 ponchio
|
||||||
*** empty log message ***
|
*** empty log message ***
|
||||||
|
|
||||||
|
|
@ -503,3 +505,91 @@ void VoronoiChain::BuildLevel(Nexus &nexus, unsigned int offset,
|
||||||
|
|
||||||
newfragments.clear();
|
newfragments.clear();
|
||||||
}
|
}
|
||||||
|
bool VoronoiChain::Save(const string &file) {
|
||||||
|
FILE *fp = fopen((output + ".remap").c_str(), "wb+");
|
||||||
|
if(!fp) {
|
||||||
|
cerr << "Could not create remapping info\n";
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
unsigned int nlevels = levels.size();
|
||||||
|
fwrite(&nlevels, sizeof(unsigned int), 1, fp);
|
||||||
|
for(int i = 0; i < nlevels; i++) {
|
||||||
|
VoronoiPartition &level = levels[i];
|
||||||
|
unsigned int npoints = level.size();
|
||||||
|
fwrite(&npoints, sizeof(unsigned int), 1, fp);
|
||||||
|
fwrite(&(level[0]), sizeof(Point3f), npoints, fp);
|
||||||
|
}
|
||||||
|
//writing fragments
|
||||||
|
|
||||||
|
unsigned int nfrag = newfragments.size();
|
||||||
|
fwrite(&nfrag, sizeof(unsigned int), 1, fp);
|
||||||
|
std::map<unsigned int, std::set<unsigned int> >::iterator i;
|
||||||
|
for(i = newfragments.begin(); i != newfragments.end(); i++) {
|
||||||
|
unsigned int n = (*i).second.size();
|
||||||
|
fwrite(&((*i).first), sizeof(unsigned int), 1, fp);
|
||||||
|
fwrite(&n, sizeof(unsigned int), 1, fp);
|
||||||
|
set<unsigned int>::iterator k;
|
||||||
|
for(k = (*i).second.begin(); k != (*i).second.end(); k++)
|
||||||
|
fwrite(&*k, sizeof(unsigned int), 1, fp);
|
||||||
|
}
|
||||||
|
nfrag = oldfragments.size();
|
||||||
|
fwrite(&nfrag, sizeof(unsigned int), 1, fp);
|
||||||
|
for(i = oldfragments.begin(); i != oldfragments.end(); i++) {
|
||||||
|
unsigned int n = (*i).second.size();
|
||||||
|
fwrite(&((*i).first), sizeof(unsigned int), 1, fp);
|
||||||
|
fwrite(&n, sizeof(unsigned int), 1, fp);
|
||||||
|
set<unsigned int>::iterator k;
|
||||||
|
for(k = (*i).second.begin(); k != (*i).second.end(); k++)
|
||||||
|
fwrite(&*k, sizeof(unsigned int), 1, fp);
|
||||||
|
}
|
||||||
|
fclose(fp);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool VoronoiChain::Load(const string &file) {
|
||||||
|
FILE *fp = fopen(file.c_str(), "rb");
|
||||||
|
if(!fp) {
|
||||||
|
cerr << "Could not open remapping info\n";
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
unsigned int nlevels;
|
||||||
|
fread(&nlevels, sizeof(unsigned int), 1, fp);
|
||||||
|
for(int i = 0; i < nlevels; i++) {
|
||||||
|
levels.push_back(VoronoiPartition());
|
||||||
|
VoronoiPartition &level = levels.back();
|
||||||
|
|
||||||
|
unsigned int npoints;
|
||||||
|
fread(&npoints, sizeof(unsigned int), 1, fp);
|
||||||
|
level.resize(npoints);
|
||||||
|
fread(&(level[0]), sizeof(Point3f), npoints, fp);
|
||||||
|
level.Init();
|
||||||
|
}
|
||||||
|
//reading fragments
|
||||||
|
unsigned int nfrag;
|
||||||
|
fread(&nfrag, sizeof(unsigned int), 1, fp);
|
||||||
|
for(unsigned int i = 0; i < nfrag; i++) {
|
||||||
|
unsigned int p, n;
|
||||||
|
fread(&p, sizeof(unsigned int), 1, fp);
|
||||||
|
set<unsigned int> &s = newfragments[p];
|
||||||
|
fread(&n, sizeof(unsigned int), 1, fp);
|
||||||
|
for(unsigned int k = 0; k < n; k++) {
|
||||||
|
unsigned int j;
|
||||||
|
fread(&j, sizeof(unsigned int), 1, fp);
|
||||||
|
s.insert(j);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fread(&nfrag, sizeof(unsigned int), 1, fp);
|
||||||
|
for(unsigned int i = 0; i < nfrag; i++) {
|
||||||
|
unsigned int p, n;
|
||||||
|
fread(&p, sizeof(unsigned int), 1, fp);
|
||||||
|
set<unsigned int> &s = oldfragments[p];
|
||||||
|
fread(&n, sizeof(unsigned int), 1, fp);
|
||||||
|
for(unsigned int k = 0; k < n; k++) {
|
||||||
|
unsigned int j;
|
||||||
|
fread(&j, sizeof(unsigned int), 1, fp);
|
||||||
|
s.insert(j);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
fclose(fp);
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,9 @@
|
||||||
History
|
History
|
||||||
|
|
||||||
$Log: not supported by cvs2svn $
|
$Log: not supported by cvs2svn $
|
||||||
|
Revision 1.6 2004/11/18 18:30:15 ponchio
|
||||||
|
Using baricenters... lotsa changes.
|
||||||
|
|
||||||
Revision 1.5 2004/10/30 20:17:03 ponchio
|
Revision 1.5 2004/10/30 20:17:03 ponchio
|
||||||
Fixed big patches problem.
|
Fixed big patches problem.
|
||||||
|
|
||||||
|
|
@ -47,6 +50,7 @@ First draft.
|
||||||
|
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <map>
|
#include <map>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
#include <vcg/space/box3.h>
|
#include <vcg/space/box3.h>
|
||||||
|
|
||||||
|
|
@ -77,6 +81,10 @@ class VoronoiChain: public PChain {
|
||||||
int steps);
|
int steps);
|
||||||
|
|
||||||
void BuildLevel(Nexus &nexus, unsigned int offset, float scaling, int steps);
|
void BuildLevel(Nexus &nexus, unsigned int offset, float scaling, int steps);
|
||||||
|
bool Save(const std::string &file);
|
||||||
|
bool Load(const std::string &file);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
std::vector<VoronoiPartition> levels;
|
std::vector<VoronoiPartition> levels;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue