X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Farc.cpp;h=89a46f3dab1e0ca12cd6e65acb4abeed92ef3250;hb=89b8b0c60579d8ef0cf9a13521e7bf7c7864883f;hp=355d7a76f2b5b425ddc5b882f7e21e86a22d8dc4;hpb=86caae9cadd6e1877a4e6226533521ef0d1c6389;p=architektonas diff --git a/src/arc.cpp b/src/arc.cpp index 355d7a7..89a46f3 100644 --- a/src/arc.cpp +++ b/src/arc.cpp @@ -400,3 +400,19 @@ bool Arc::AngleInArcSpan(double angle) fprintf(file, "ARC (%lf,%lf) %lf, %lf, %lf\n", position.x, position.y, radius, startAngle, angleSpan); } + +/*virtual*/ Object * Arc::Copy(void) +{ +#warning "!!! This doesn't take care of attached Dimensions !!!" +/* +This is a real problem. While having a pointer in the Dimension to this line's points +is fast & easy, it creates a huge problem when trying to replicate an object like this. + +Maybe a way to fix that then, is to have reference numbers instead of pointers. That +way, if you copy them, ... you might still have problems. Because you can't be sure if +a copy will be persistant or not, you then *definitely* do not want them to have the +same reference number. +*/ + return new Arc(position, radius, startAngle, angleSpan, parent); +} +