Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Want <cwant@ualberta.ca>2002-12-28 20:55:24 +0300
committerChris Want <cwant@ualberta.ca>2002-12-28 20:55:24 +0300
commit9e3c814e7272237c9d6b13f4d7b8a9b5d41a3ed6 (patch)
tree4db4cfbb394dafc88c581c95a2dd50c43a0576b8 /intern/bsp
parent7c96971152a6b270f8517faa5b05a1f3799654fb (diff)
Reverted changes to bsp code so that the code will compile
under gcc 3.x. A better solution should be found as this breaks booleans. Chris
Diffstat (limited to 'intern/bsp')
-rw-r--r--intern/bsp/intern/BSP_CSGHelper.cpp2
-rwxr-xr-xintern/bsp/intern/BSP_CSGMesh_CFIterator.h18
-rwxr-xr-xintern/bsp/intern/BSP_CSGUserData.cpp11
-rwxr-xr-xintern/bsp/intern/BSP_Triangulate.cpp2
4 files changed, 17 insertions, 16 deletions
diff --git a/intern/bsp/intern/BSP_CSGHelper.cpp b/intern/bsp/intern/BSP_CSGHelper.cpp
index 705d9858bb8..0932d9bcdb9 100644
--- a/intern/bsp/intern/BSP_CSGHelper.cpp
+++ b/intern/bsp/intern/BSP_CSGHelper.cpp
@@ -412,7 +412,7 @@ DuplicateMesh(
// duplicate the face data for this face.
o_f_data.Duplicate(i_f_data[*f_faces_it]);
- output.AddSubTriangle(dup_face,triangle_indices.begin() + i);
+ output.AddSubTriangle(dup_face,&triangle_indices[i]);
}
}
diff --git a/intern/bsp/intern/BSP_CSGMesh_CFIterator.h b/intern/bsp/intern/BSP_CSGMesh_CFIterator.h
index 8255b4f7d2a..a29ea4a547a 100755
--- a/intern/bsp/intern/BSP_CSGMesh_CFIterator.h
+++ b/intern/bsp/intern/BSP_CSGMesh_CFIterator.h
@@ -30,6 +30,7 @@
*/
#ifndef BSP_CSGMesh_CFIterator_h
+
#define BSP_CSGMesh_CFIterator_h
#include "BSP_CSGMesh.h"
@@ -69,7 +70,7 @@ BSP_CSGMesh_VertexIt_Done(
// assume CSG_IteratorPtr is of the correct type.
BSP_CSGMesh_VertexIt * vertex_it = (BSP_CSGMesh_VertexIt *)it;
- if (vertex_it->pos < vertex_it->mesh->VertexSet().end()) return 0;
+ if (vertex_it->pos < &(*vertex_it->mesh->VertexSet().end())) return 0;
return 1;
};
@@ -103,7 +104,7 @@ BSP_CSGMesh_VertexIt_Reset(
) {
// assume CSG_IteratorPtr is of the correct type.
BSP_CSGMesh_VertexIt * vertex_it = (BSP_CSGMesh_VertexIt *)it;
- vertex_it->pos = vertex_it->mesh->VertexSet().begin();
+ vertex_it->pos = &vertex_it->mesh->VertexSet()[0];
};
static
@@ -122,7 +123,7 @@ BSP_CSGMeshVertexIt_Construct(
BSP_CSGMesh_VertexIt * v_it = new BSP_CSGMesh_VertexIt;
v_it->mesh = mesh;
- v_it->pos = mesh->VertexSet().begin();
+ v_it->pos = &mesh->VertexSet()[0];
output->it = v_it;
};
@@ -161,7 +162,7 @@ BSP_CSGMesh_FaceIt_Done(
// assume CSG_IteratorPtr is of the correct type.
BSP_CSGMesh_FaceIt * face_it = (BSP_CSGMesh_FaceIt *)it;
- if (face_it->pos < face_it->mesh->FaceSet().end()) {
+ if (face_it->pos < &(*face_it->mesh->FaceSet().end())) {
if (face_it->face_triangle + 3 <= face_it->pos->m_verts.size()) {
return 0;
}
@@ -190,7 +191,7 @@ BSP_CSGMesh_FaceIt_Fill(
// time to change the iterator type to an integer...
face_it->mesh->FaceData().Copy(
face->user_face_data,
- int(face_it->pos - face_it->mesh->FaceSet().begin())
+ int(face_it->pos - &face_it->mesh->FaceSet()[0])
);
// Copy face vertex data across...
@@ -222,7 +223,8 @@ BSP_CSGMesh_FaceIt_Step(
BSP_CSGMesh_FaceIt * face_it = (BSP_CSGMesh_FaceIt *)it;
// safety guard
- if (face_it->pos < face_it->mesh->FaceSet().end()) {
+ if (face_it->pos < &(*face_it->mesh->FaceSet().end())) {
+
if (face_it->face_triangle + 3 < face_it->pos->m_verts.size()) {
(face_it->face_triangle)++;
} else {
@@ -239,7 +241,7 @@ BSP_CSGMesh_FaceIt_Reset(
) {
// assume CSG_IteratorPtr is of the correct type.
BSP_CSGMesh_FaceIt * f_it = (BSP_CSGMesh_FaceIt *)it;
- f_it->pos = f_it->mesh->FaceSet().begin();
+ f_it->pos = &f_it->mesh->FaceSet()[0];
f_it->face_triangle = 0;
};
@@ -259,7 +261,7 @@ BSP_CSGMesh_FaceIt_Construct(
BSP_CSGMesh_FaceIt * f_it = new BSP_CSGMesh_FaceIt;
f_it->mesh = mesh;
- f_it->pos = mesh->FaceSet().begin();
+ f_it->pos = &mesh->FaceSet()[0];
f_it->face_triangle = 0;
output->it = f_it;
diff --git a/intern/bsp/intern/BSP_CSGUserData.cpp b/intern/bsp/intern/BSP_CSGUserData.cpp
index 4bd37bac34f..a22f88f2f24 100755
--- a/intern/bsp/intern/BSP_CSGUserData.cpp
+++ b/intern/bsp/intern/BSP_CSGUserData.cpp
@@ -66,7 +66,7 @@ Duplicate(
int output = Size();
IncSize();
- memcpy(m_data.end() - m_width,record,m_width);
+ memcpy(&m_data[ m_data.size() - 1 - m_width ], record, m_width);
return output;
}
@@ -80,9 +80,8 @@ Duplicate(
){
if (m_width) {
IncSize();
-
- memcpy(m_data.end() - m_width,m_data.begin() +
- record_index * m_width,m_width);
+ memcpy(&m_data[ m_data.size() - 1 - m_width ],
+ &m_data[ record_index * m_width], m_width);
}
}
@@ -94,7 +93,7 @@ Copy(
int pos
){
if (m_width) {
- memcpy(output,m_data.begin() + m_width*pos,m_width);
+ memcpy(output, &m_data[m_width*pos],m_width);
}
}
void
@@ -133,6 +132,6 @@ BSP_CSGUserData::
operator [] (
const int pos
){
- return m_data.begin() + m_width*pos;
+ return &m_data[ m_width*pos ];
}
diff --git a/intern/bsp/intern/BSP_Triangulate.cpp b/intern/bsp/intern/BSP_Triangulate.cpp
index e1132e460ec..fbfba62b907 100755
--- a/intern/bsp/intern/BSP_Triangulate.cpp
+++ b/intern/bsp/intern/BSP_Triangulate.cpp
@@ -219,7 +219,7 @@ Process(
/* Try and snip this triangle off from the
current polygon.*/
- if ( Snip(verts,contour,u,v,w,nv,m_V.begin()) )
+ if ( Snip(verts,contour,u,v,w,nv, &m_V[0]) )
{
int a,b,c,s,t;