Introduction
Graphic
applications which make the backbone for CAD/CAM/GIS applications need to have a
canvas or view on which all the graphic elements are rendered. Any complex
model in CAD/CAM/GIS applications is composed of basic graphic elements such
as lines, arc, circle, ellipse, rectangles, polylines, polygons…etc.
The
complex models are easily created by performing the simple operations on the
graphic elements, and these basic editing features include copy, cut, paste,
move, delete, scale, mirror.
Mapview
is an attempt to create a C# component that can be used
to create and edit the graphic elements interactively.
Background
Mapview
control is a C# component, which allows the user to create
various types of vector graphical elements and which will be created and edited
interactively.
To avoid this inconvenience, this implementation is logically divided to
geometrical model and view. When you're editing objects inside the Mapview,
geometrical model (presented in “real world” coordinates) is changing and the
view (client coordinates) stays the same, and when you rescale and scroll the Mapview,
the geometrical model stays unchanged.
Mapview
model could have several views showing different parts of the model. All
views are updated automatically when the model changes, it means that if you
moving or editing shape in one of the views you will see changes in others.
Using Mapview
The sample code is
having the detailed description about using the application. This is initial
version of the control and some of the functionality is yet to be implemented.
Using the code
The sample code is
having the detailed description about using the application. This is initial
version of the control and some of the functionality is yet to be implemented.
Enthusiastic users are
encouraged to take the code implement/modify/fine tune the code wherever required.
Points of Interest
I
would like to make an efficient FREE CAD/GIS graphic engine in .NET using C#. So,
that the users need not depend on the proprietary software to make the applications. This is the
first step in that direction.
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.