Visual Servoing Platform
version 3.7.0
Toggle main menu visibility
Loading...
Searching...
No Matches
vpBound.h
1
/*
2
* ViSP, open source Visual Servoing Platform software.
3
* Copyright (C) 2005 - 2025 by Inria. All rights reserved.
4
*
5
* This software is free software; you can redistribute it and/or modify
6
* it under the terms of the GNU General Public License as published by
7
* the Free Software Foundation; either version 2 of the License, or
8
* (at your option) any later version.
9
* See the file LICENSE.txt at the root directory of this source
10
* distribution for additional information about the GNU GPL.
11
*
12
* For using ViSP with software that can not be combined with the GNU
13
* GPL, please contact Inria about acquiring a ViSP Professional
14
* Edition License.
15
*
16
* See https://visp.inria.fr for more information.
17
*
18
* This software was developed at:
19
* Inria Rennes - Bretagne Atlantique
20
* Campus Universitaire de Beaulieu
21
* 35042 Rennes Cedex
22
* France
23
*
24
* If you have questions regarding the use of this file, please contact
25
* Inria at visp@inria.fr
26
*
27
* This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
28
* WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
29
*
30
* Description:
31
* Le fichier "bound.h" contient les macros et le types
32
* utilises par le modele geometrique surfacique polygonale 3D.
33
*
34
* Authors:
35
* Jean-Luc CORRE
36
*/
37
38
#ifndef vpBound_H
39
#define vpBound_H
40
41
#include <visp3/core/vpConfig.h>
42
43
#ifndef DOXYGEN_SHOULD_SKIP_THIS
44
45
#include "vpArit.h"
46
#include "vpMy.h"
47
#include <visp3/robot/vpWireFrameSimulatorTypes.h>
48
49
#define START_ARG 0
50
#define NEXT_ARG 1
51
52
#define BND_NULL (-1)
53
54
#define BND_BLOCK 0
55
#define BND_CARDIOIDE 1
56
#define BND_CONE 2
57
#define BND_CYLINDER 3
58
#define BND_SPHERE 4
59
#define BND_TORUS 5
60
#define BND_WEDGE 6
61
62
#define BND_F3 7
63
#define BND_F4 8
64
65
#define BND_GRID 9
66
#define BND_PIPE 10
67
#define BND_SECTION 11
68
69
#define BND_NBR 12
70
71
#define BOUND_NBR 1024
72
#define FACE_NBR 6144
/* Tailles de tableaux */
73
#define VERTEX_NBR 16
74
#define POINT_NBR 6144
75
#ifdef face_normal
76
#define VECTOR_NBR 6144
77
#endif
// face_normal
78
79
BEGIN_VISP_NAMESPACE
80
#ifdef face_edge
81
typedef
struct
82
{
83
Index v0, v1;
/* extremites */
84
Index f0, f1;
/* faces */
85
} Edge;
86
#endif
// face_edge
87
88
#ifdef face_edge
89
typedef
struct
90
{
91
Index nbr;
/* nombre d'aretes */
92
Edge *ptr;
/* liste dynamique */
93
} Edge_list;
94
#endif
// face_edge
95
96
#ifdef face_normal
97
typedef
struct
98
{
99
Index nbr;
/* nombre de vecteurs */
100
Vector *ptr;
/* liste dynamique */
101
} Vector_list;
102
#endif
// face_normal
103
104
typedef
struct
105
{
106
float
xmin, xmax;
/* bornes sur l'axe x */
107
float
ymin, ymax;
/* bornes sur l'axe y */
108
float
zmin, zmax;
/* bornes sur l'axe z */
109
} Bounding_box;
110
111
typedef
struct
112
{
113
Index nbr;
/* nombre de scenes */
114
Bound_scene *ptr;
/* liste dynamique */
115
} Bound_scene_list;
116
117
void
free_Bound(Bound *bp);
118
void
free_huge_Bound(Bound *bp);
119
void
free_Bound_scene(Bound_scene *bsp);
120
void
malloc_Bound(Bound *bp, Type type,
int
polygonal, Index fn, Index pn);
121
void
malloc_huge_Bound(Bound *bp);
122
void
malloc_Bound_scene(Bound_scene *bsp,
const
char
*name, Index bn);
123
END_VISP_NAMESPACE
124
#endif
125
#endif
BEGIN_VISP_NAMESPACE
Definition
vpMbtDistanceCircle.cpp:55
modules
robot
src
wireframe-simulator
vpBound.h
Generated by
1.17.0