- Added simple code for operator<<() for Ray_[23] and Line_[23].

This commit is contained in:
Sylvain Pion 2001-01-23 10:50:11 +00:00
parent a17f238d3d
commit df7909e354
3 changed files with 65 additions and 6 deletions

View File

@ -4,10 +4,12 @@
It's still probably a bug in Geomview.
- The remote geomview (with rsh) facility probably doesn't work.
But is it useful ?
- What to do for Circle_2 ? Maybe there's some code somewhere, or ask the
geomview list. Or do the discretisation ourselves, maybe it's the kernel's
job ? Discretisation for Sphere and Circle should be configurable for the
stream.
- Missing operators (for 2d and 3d Voronoi diagrams) :
- Ray_[23], Line_[23] : an easy one is already there, but to do it
perfectly, we should draw the segment resulting from the intersection of
the object with the BBox.
- Circle_2
- Discretisation for Sphere and Circle should be configurable for the stream.
- Is there a way to see edges like cylinders somewhat (possibly generate them
ourselves), so that we know which one is in front of which other one ?
- For T3D : I want to be able to tell Geomview or the CGAL program to stop
@ -32,7 +34,6 @@ Color:
Demo :
------
- Add demo files for polyhedrons ?
- Bernd is asking to see minimum enclosing spheres.
Doc:
---

View File

@ -1,5 +1,8 @@
CHANGES to the Geomview package.
Ver 3.8 (23 January 2001)
- Added (simple) operator<<() for Ray_[23] and Line_[23].
Ver 3.7 (7 December 2000)
- Added a member function get_new_id(string) to replace and generalize the
per type counters used to get unique identifiers for geomview.

View File

@ -1,6 +1,6 @@
// ============================================================================
//
// Copyright (c) 1997,1998,1999,2000 The CGAL Consortium
// Copyright (c) 1997,1998,1999,2000,2001 The CGAL Consortium
//
// This software and related documentation is part of an INTERNAL release
// of the Computational Geometry Algorithms Library (CGAL). It is not
@ -396,6 +396,61 @@ operator<<(Geomview_stream &gv, const Sphere_3<R> &S)
}
#endif
// Ray and Line drawing should be done by intersecting them with the BBox
// of the Geomview_stream. But for now we take the easy approach.
#if defined CGAL_RAY_2_H && \
!defined CGAL_GV_OUT_RAY_2_H
#define CGAL_GV_OUT_RAY_2_H
template < class R >
Geomview_stream&
operator<<(Geomview_stream &gv, const Ray_2<R> &r)
{
typename R::Segment_2 s(r.source(), r.point(1));
gv << s;
return gv;
}
#endif
#if defined CGAL_RAY_3_H && \
!defined CGAL_GV_OUT_RAY_3_H
#define CGAL_GV_OUT_RAY_3_H
template < class R >
Geomview_stream&
operator<<(Geomview_stream &gv, const Ray_3<R> &r)
{
typename R::Segment_3 s(r.source(), r.point(1));
gv << s;
return gv;
}
#endif
#if defined CGAL_LINE_2_H && \
!defined CGAL_GV_OUT_LINE_2_H
#define CGAL_GV_OUT_LINE_2_H
template < class R >
Geomview_stream&
operator<<(Geomview_stream &gv, const Line_2<R> &r)
{
typename R::Segment_2 s(r.point(-1), r.point(1));
gv << s;
return gv;
}
#endif
#if defined CGAL_LINE_3_H && \
!defined CGAL_GV_OUT_LINE_3_H
#define CGAL_GV_OUT_LINE_3_H
template < class R >
Geomview_stream&
operator<<(Geomview_stream &gv, const Line_3<R> &r)
{
typename R::Segment_3 s(r.point(-1), r.point(1));
gv << s;
return gv;
}
#endif
Geomview_stream&
operator<<(Geomview_stream &gv, const Bbox_2 &bbox);