pmwx_sweep_line_curve.h
来自「CGAL is a collaborative effort of severa」· C头文件 代码 · 共 112 行
H
112 行
// Copyright (c) 1997 Tel-Aviv University (Israel).// All rights reserved.//// This file is part of CGAL (www.cgal.org); you may redistribute it under// the terms of the Q Public License version 1.0.// See the file LICENSE.QPL distributed with CGAL.//// Licensees holding a valid commercial license may use this file in// accordance with the commercial license agreement provided with the software.//// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.//// $Source: /CVSROOT/CGAL/Packages/Arrangement/include/CGAL/Sweep_line_2/Pmwx_sweep_line_curve.h,v $// $Revision: 1.8 $ $Date: 2003/09/18 10:19:50 $// $Name: $//// Author(s) : Tali Zvi <talizvi@post.tau.ac.il>#ifndef CGAL_PMWX_SWEEP_LINE_CURVE_H#define CGAL_PMWX_SWEEP_LINE_CURVE_H#include <set>#include <CGAL/Sweep_line_2/Sweep_line_subcurve.h>#include <CGAL/Sweep_line_2/Pmwx_insert_info.h>#include <CGAL/Sweep_line_2/Pmwx_sweep_line_event.h>CGAL_BEGIN_NAMESPACE/*! @class Pmwx_sweep_line_curve * * a class that holds information about a curve that is added to * the planar map. * In addition to the information that is contained in Sweep_line_subcurve, * when a planar map is constructed, a reference to an event that was * handled last on the curve is stored. This information is used to retrieve * hints when a subcurve of this curve is inserted into the planar map. * * Inherits from Sweep_line_subcurve * \sa Sweep_line_subcurve */template<class SweepLineTraits_2, class HalfedgeHandle>class Pmwx_sweep_line_curve : public Sweep_line_subcurve<SweepLineTraits_2>{public: typedef SweepLineTraits_2 Traits; typedef typename Traits::Point_2 Point_2; typedef typename Traits::Curve_2 Curve_2; typedef typename Traits::X_monotone_curve_2 X_monotone_curve_2; typedef Sweep_line_subcurve<SweepLineTraits_2> Base; typedef Pmwx_sweep_line_curve<Traits, HalfedgeHandle> Self; typedef Status_line_curve_less_functor<Traits, Self> StatusLineCurveLess; typedef std::set<Self*, StatusLineCurveLess> StatusLine; typedef typename StatusLine::iterator StatusLineIter; typedef Pmwx_insert_info<HalfedgeHandle> PmwxInsertInfo; typedef Pmwx_sweep_line_event<Traits, Self> Event; Pmwx_sweep_line_curve(int id, X_monotone_curve_2 &curve, Point_2 *reference, SweepLineTraits_2 *traits) : Base(id, curve, reference, traits) , m_insertInfo(0), m_lastEvent(0) { } void set_hint(StatusLineIter hint) { m_hint1 = hint; } StatusLineIter get_hint() const { return m_hint1; } void set_insert_info(PmwxInsertInfo *insertInfo) { m_insertInfo = insertInfo; } PmwxInsertInfo *get_insert_info() const { return m_insertInfo; } void set_last_event(Event *e) { m_lastEvent = e; } Event *get_last_event() const { return m_lastEvent; }private: /* the insert information of this curve */ PmwxInsertInfo *m_insertInfo; /*! the last event that was handled on the curve */ Event *m_lastEvent; /*! */ StatusLineIter m_hint1;};CGAL_END_NAMESPACE#endif // CGAL_PMWX_SWEEP_LINE_CURVE_H
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?