Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
relativelocation.hpp
Go to the documentation of this file.
1/*
2 RELATIVELOCATION.hpp - Placement implementation attaching MObjects relative to another one
3
4 Copyright (C)
5 2008, Hermann Vosseler <Ichthyostega@web.de>
6
7  **Lumiera** is free software; you can redistribute it and/or modify it
8  under the terms of the GNU General Public License as published by the
9  Free Software Foundation; either version 2 of the License, or (at your
10  option) any later version. See the file COPYING for further details.
11
12*/
13
14
21#ifndef MOBJECT_SESSION_RELATIVELOCATION_H
22#define MOBJECT_SESSION_RELATIVELOCATION_H
23
26
27
28
29
30namespace steam {
31namespace mobject {
32namespace session {
33
35
36
43 {
44// const PMO & anchor_; ////////////TODO: ooooops, this is a nasty design problem!!!
45
47
48 public:
49
57
58 protected:
59 RelativeLocation (PlaRef const& a, Offset const& ofs) : anchor_(a), offset_(ofs) { }
60 friend class LocatingPin;
61
64
67 //TODO: suitable representation?
68
69
70 virtual void intersect (LocatingSolution&) const;
71
72
73 public:
74 virtual RelativeLocation* clone () const;
75
76 };
77
78
79
80}}} // namespace steam::mobject::session
81#endif
Offset measures a distance in time.
Positioning specification, possibly chained to further specifications.
Offset offset_
Offset the actual position by this (time) value relative to the anchor point.
virtual void intersect(LocatingSolution &) const
RelType
the possible kinds of RelativePlacements
@ SAMETIME
place subject at the same time as the anchor
@ ATTACH
attach subject to anchor (e.g.
RelativeLocation(PlaRef const &a, Offset const &ofs)
RelType relType
the kind of relation denoted by this Placement
virtual RelativeLocation * clone() const
Implementing the Placement mechanics.
Namespace of Session and user visible high-level objects.
Definition sequence.hpp:65
Steam-Layer implementation namespace root.
A generic reference mechanism for Placements, as added to the current session.