c# .net design scaling solution - Revised

Completed Posted Jan 7, 2012 Paid on delivery
Completed Paid on delivery

Budget for this project is $300 USD.

We need someone who can help us create a scaling solution for our design software.

Our design software allows users to create their own products via a web interface. All image manipulation is done on the server and we need our classes modified to allow a design to be assigned to a new design area, resized and repositioned if need be. The current class structure is:

Product

- View (This is typically the front or back of a shirt. Products may contain 1 or more)

- Design Areas (This could be full front, left chest, or any other defined location. Views will contain a list of 1 or more design areas)

- Design (Each design area will contain no more than 1 design. If no design was created for the design area, it will be blank.)

- Design Elements (Each design will contain a list of 1 or more design elements. All design elements are images regardless of type.)

The default canvas size is 500x500. This is our original canvas size as shown in the designer and is the default size that all product images are shown at.

Design Area

Each design area is a rectangle that has been defined within this space. In the example image attached, it is the red dotted outline that is 160x192 pixels in width and starts at point 166,97. The important members of this class are:

ViewWidth & ViewHeight: This represents the canvas width and height noted above. 500x500

TopLeftX & TopLeftY: This represents the start point of the design area. 160x192

OutlineWidth & OutlineHeight: This represents the width & height of the design area. 166.97

Design

The design is a container that holds a list of all the design elements. It also has a reference to the canvas size that it was created on (500x500) and the design area deminisions it was created on. The important members of this class are:

ViewWidth & ViewHeight: This represents the canvas width and height that the design was originally created on. 500x500

OutlineX & OutlineY: This represents the start point of the design area the design was originally created on. 160x192

OutlineWidth & OutlineHeight: This represents the width & height of the design area the design was originally created on. 166.97

Element

The elements are the individual images that make up a design. Each element also has a reference to the original canvas size that it was created on and the design area deminisions it was created on. The import members of this class are:

ViewWidth & ViewHeight: This represents the canvas width and height that the design was originally created on. 500x500

OutlineX & OutlineY: This represents the start point of the design area the design was originally created on. 160x192

OutlineWidth & OutlineHeight: This represents the width & height of the design area the design was originally created on. 166.97

The specific properties that need to be adjusted based on scale / positioning, are:

TopX and TopY - Represents the starting point (X,Y coordinate) of the element.

Width & Height - Represents the width and height of the element.

CenterX & CenterY - Represents the Center point of the element.

By default, the canvas, design area, and element properties are the original settings that were captured when the design was saved. What we want to accomplish is to be able to pass a new rectangle (design area) to the design class that will automatically scale and reposition the design elements to fit within that area. We should also be able to tell the design how top align itself with and Vertical Align and Horizontal Align parameters.

Horizonal Align: Left, Center, Right

Vertical Align: Top, Middle, Bottom

The design should be scaled proportionately to fit within the new rectangle and then positioned according to the alignment settings above.

Image [url removed, login to view] shows the original design and design_sample_2 shows the design after it has been scaled and repositioned for a new design area, centered horizontally and vertically.

.NET

Project ID: #1375718

About the project

5 proposals Remote project Active Jan 9, 2012

Awarded to:

OShuqair

Hello Sir, I am interested. please check my message.

$290 USD in 7 days
(86 Reviews)
7.4

5 freelancers are bidding on average $358 for this job

MidsSoft

Hi, Greetings! This is Mars. I am having 6+ years of experience in Microsoft Technologies. I am having good working experience in C#, ASP.Net, Web service, WCF SQL Server, Javascript, jQuery etc. I am current More

$700 USD in 25 days
(0 Reviews)
0.0
sherydotnet

Hi, I am a very Professional .Net Developer and I can help you in building this job, Please see the private message, Thanks

$250 USD in 6 days
(0 Reviews)
0.0