mirror of https://github.com/CGAL/cgal
cleaned up docs for split some more
This commit is contained in:
parent
eaecab2c5f
commit
38c6890ce0
|
|
@ -5,7 +5,7 @@
|
|||
|
||||
Here we present a simple example that uses the
|
||||
\ccc{Kinetic::Sort<Traits, Visitor>} kinetic data structure to compute
|
||||
an arrangement of algebraic curves. It wraps the sorting data
|
||||
an arrangement of algebraic functions. It wraps the sorting data
|
||||
structure and uses a visitor to monitor changes and map them to
|
||||
corresponding features in the arrangement. To see an example using
|
||||
this kinetic data structure read the example at
|
||||
|
|
@ -113,8 +113,26 @@ public:
|
|||
\end{ccExampleCode}
|
||||
|
||||
Finally, we have to set everything up. To do this we use some special
|
||||
event classes: \ccc{Kinetic::Insert_event<>}
|
||||
|
||||
event classes: \ccc{Kinetic::Insert_event<ActiveObjectsTable>} and
|
||||
\ccc{Kinetic::Erase_event<ActiveObjectsTable>}. These are events which
|
||||
can be put in the event queue which either insert a primitive into the
|
||||
set of active objects or remove it. Using these, we can allow curves
|
||||
in the arrangement to begin or end in arbitrary places.
|
||||
\begin{ccExampleCode}
|
||||
typedef CGAL::Kinetic::Insert_event<Traits::Active_points_1_table> Insert_event;
|
||||
typedef CGAL::Kinetic::Erase_event<Traits::Active_points_1_table> Erase_event;
|
||||
do {
|
||||
NT begin, end;
|
||||
Point function;
|
||||
// initialize the function and the beginning and end somewhere
|
||||
tr.simulator_handle()->new_event(Time(begin),
|
||||
Insert_event(function, tr.active_points_1_table_handle()));
|
||||
tr.simulator_handle()->new_event(Time(end),
|
||||
Erase_event(Traits::Active_points_1_table::Key(num),
|
||||
tr.active_points_1_table_handle()));
|
||||
++num;
|
||||
} while (true);
|
||||
\end{ccExampleCode}
|
||||
%%% Local Variables:
|
||||
%%% mode: latex
|
||||
%%% TeX-master: t
|
||||
|
|
|
|||
|
|
@ -11,17 +11,17 @@
|
|||
% +------------------------------------------------------------------------+
|
||||
|
||||
|
||||
\begin{ccRefClass}{Kinetic::Insert_event<ActiveObjectsTable>} %% add template arg's if necessary
|
||||
\begin{ccRefClass}{Kinetic::Erase_event<ActiveObjectsTable>} %% add template arg's if necessary
|
||||
|
||||
%% \ccHtmlCrossLink{} %% add further rules for cross referencing links
|
||||
%% \ccHtmlIndexC[class]{} %% add further index entries
|
||||
|
||||
\ccDefinition
|
||||
|
||||
This event inserts a point into the \ccc{ActiveObjectsTable} when it
|
||||
This event erases a point from the \ccc{ActiveObjectsTable} when it
|
||||
is processed.
|
||||
|
||||
\ccInclude{CGAL/Kinetic/Insert_event.h}
|
||||
\ccInclude{CGAL/Kinetic/Erase_event.h}
|
||||
|
||||
\ccIsModel
|
||||
\ccc{Kinetic::Simulator::Event}
|
||||
|
|
@ -29,9 +29,8 @@ is processed.
|
|||
\ccCreation
|
||||
\ccCreationVariable{i} %% choose variable name
|
||||
|
||||
\ccConstructor{Insert_event(ActiveObjectsTable::Data o,
|
||||
ActiveObjectsTable::Handle t);}{Insert the object o, into the table
|
||||
t when processed.}
|
||||
\ccConstructor{Insert_event(ActiveObjectsTable::Key k,
|
||||
ActiveObjectsTable::Handle t);}{Erase the object \ccc{k} from the table \ccc{t} when processed.}
|
||||
|
||||
|
||||
\ccSeeAlso
|
||||
|
|
@ -54,7 +53,7 @@ KDel kdel(tr);
|
|||
Moving_point_2 mp(Moving_point_2::NT(0),
|
||||
Moving_point_2::NT(0));
|
||||
tr.simulator_handle()->new_event(Simulation_traits::Simulator::Time(3),
|
||||
Insert_event(mp,
|
||||
Erase_event(*tr.active_objects_table_handle()->keys_begin(),
|
||||
tr.active_points_2_table_handle()));
|
||||
|
||||
\end{ccExampleCode}
|
||||
|
|
|
|||
|
|
@ -58,6 +58,12 @@ The support classes:
|
|||
|
||||
\ccRefIdfierPage{Kinetic::Regular_triangulation_vertex_base_3<Traits, Base>}
|
||||
|
||||
\ccRefIdfierPage{Kinetic::Insert_event<ActiveObjectsTable>}
|
||||
|
||||
\ccRefIdfierPage{Kinetic::Erase_event<ActiveObjectsTable>}
|
||||
|
||||
|
||||
|
||||
\ccHeading{Graphical display}
|
||||
|
||||
Next we have some support classes which are used to display kinetic data structures:
|
||||
|
|
|
|||
|
|
@ -20,7 +20,9 @@
|
|||
\input{Kinetic_data_structures_ref/Delaunay_triangulation_visitor_base_3.tex}
|
||||
\input{Kinetic_data_structures_ref/Enclosing_box_2.tex}
|
||||
\input{Kinetic_data_structures_ref/Enclosing_box_3.tex}
|
||||
\input{Kinetic_data_structures_ref/Erase_event.tex}
|
||||
\input{Kinetic_data_structures_ref/EventLogVisitor.tex}
|
||||
\input{Kinetic_data_structures_ref/Insert_event.tex}
|
||||
\input{Kinetic_data_structures_ref/Qt_moving_points_2.tex}
|
||||
\input{Kinetic_data_structures_ref/Qt_triangulation_2.tex}
|
||||
\input{Kinetic_data_structures_ref/Qt_widget_2.tex}
|
||||
|
|
|
|||
|
|
@ -82,8 +82,6 @@ Next we have some support classes which are used to display kinetic data structu
|
|||
|
||||
\ccRefIdfierPage{Kinetic::Active_objects_listener_helper<ActiveObjectsTable, KDS>}
|
||||
|
||||
\ccRefIdfierPage{Kinetic::Insert_event<ActiveObjectsTable>}
|
||||
|
||||
\ccRefIdfierPage{CGAL::Listener<Interface>}
|
||||
|
||||
\ccRefIdfierPage{CGAL::Multi_listener<Interface>}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,6 @@
|
|||
\input{Kinetic_framework_ref/Event.tex}
|
||||
\input{Kinetic_framework_ref/FunctionKernel.tex}
|
||||
\input{Kinetic_framework_ref/Function.tex}
|
||||
\input{Kinetic_framework_ref/Insert_event.tex}
|
||||
\input{Kinetic_framework_ref/InstantaneousKernel.tex}
|
||||
\input{Kinetic_framework_ref/Key.tex}
|
||||
\input{Kinetic_framework_ref/KineticKernel.tex}
|
||||
|
|
|
|||
Loading…
Reference in New Issue