OberonPlace.com Forums

OberonPlace.com Forums (http://forum.oberonplace.com/index.php)
-   CorelDRAW/Corel DESIGNER VBA (http://forum.oberonplace.com/forumdisplay.php?f=16)
-   -   Distortion (http://forum.oberonplace.com/showthread.php?t=24789)

nic 09-04-2017 22:02

Im trying to find a method of transforming a square which has a number of shapes within it, into a curved shape, so the shapes within the original shape are relationally transformed.

I have a number of shapes with slightly different proportions which I want to stretch the square and its contents into. The new shapes all have 2 straight lines (but angled edges) and two almost parallel curves and only 4 nodes. The new shapes are also rotated differently to each other and the original square.

Link to example: https://1drv.ms/i/s!AuIJtBoQdK8DjZ4uU0mT66NcF3iJhg


Im thinking that the general approach would be something like;

1. Rotate the square and its contents so that it is parallel with the shape it is to fit,
2. stretch the square so that each corner is over the corners of the shape it will fit into,
3. copy the curve information from each one of the shapes nodes to the nodes of the square - as a transformation of some kind,

I would like to ask;
Is this approach suitable?
How do you go about copying the nodes curve information? and
How to apply this to the square?

Best wishes,

shark 10-04-2017 04:56

You could use an existing CorelDraw tool - Interactive Envelope. Draw distorted shape, then select group with shapes, activate Interactive Envelope, click eyedropper on the panel and select distorted shape. All shapes in group will be distorted as you want

nic 10-04-2017 08:08

need to use a macro
Thanks Shark I shall look into that - I didnt make it clear but I need to do it using vba - the number of shapes I want to run it on makes doing it manually impractical.

Trying to make a spiral, a sort of 2d version of -


All times are GMT -5. The time now is 03:25.

Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
Copyright © 2011, Oberonplace.com