-
Notifications
You must be signed in to change notification settings - Fork 3
/
EndedObject.h
33 lines (26 loc) · 926 Bytes
/
EndedObject.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
// EndedObject.h
// Copyright (c) 2009, Dan Heeks
// This program is released under the BSD license. See the file COPYING for details.
#pragma once
#include "ExtrudedObj.h"
#include "HeeksColor.h"
class EndedObject : public ExtrudedObj<HeeksObj>{
protected:
HeeksColor color;
public:
gp_Pnt A, B;
~EndedObject(void);
EndedObject(void);
EndedObject(const EndedObject& e);
const EndedObject& operator=(const EndedObject &b);
// HeeksObj's virtual functions
bool Stretch(const double *p, const double* shift, void* data);
void ModifyByMatrix(const double* m);
bool GetStartPoint(double* pos);
bool GetEndPoint(double* pos);
void CopyFrom(const HeeksObj* object){ operator=(*((EndedObject*)object)); }
void SetColor(const HeeksColor &col){ color = col; }
const HeeksColor* GetColor()const{ return &color; }
HeeksObj* MakeACopyWithID();
bool IsDifferent(HeeksObj* other);
};