Search found 20 matches

by Nick
Tue Sep 17, 2024 5:52 pm
Forum: DG Kernel discussions
Topic: DG Kernel 7.2 is out
Replies: 0
Views: 3908

DG Kernel 7.2 is out

Hello friends We have released v7.2 :D! Download , What's new . The main feature is the new .NET 6.0 (Core) control named DGKCn6. We have also integrated engraving functionality into interface. There is a new Engrave sample. It was a significant hurdle with the hard transition to .NET Core, team cha...
by Nick
Tue Aug 20, 2024 1:20 am
Forum: DG Kernel discussions
Topic: Exceptions (restored)
Replies: 0
Views: 5424

Exceptions (restored)

General observation about exceptions: Geometry is such a vast field that exceptions are inevitable. They are inevitable in any software actually. We are trying to give some response and error report whenever it is possible, but generally we consider DGK as an “open” software in the sense that not ca...
by Nick
Mon Aug 05, 2024 4:31 am
Forum: DG Kernel discussions
Topic: Location, Orinetation, Frames blog
Replies: 4
Views: 6529

Frames and matrixes

Matrixes are tables of numbers. If we consider only orientation of a frame and ignore the origin (location), fames can be mapped to size three square matrixes with determinant of 1.0. To convert a frame f to matrix M one needs to take coordinates of the first, etc. axis of f and make it the first, e...
by Nick
Mon Aug 05, 2024 1:48 am
Forum: DG Kernel discussions
Topic: View Blog (restored)
Replies: 3
Views: 9999

Advanced

For completeness: We do not use Camera concept often mentioned in literature and graphical software. We believe it a secondary notion coming from some traditions. View Volume is clearer and more convenient for both interaction and programming, in our view ( :? :lol: ).
by Nick
Fri Aug 02, 2024 2:00 am
Forum: DG Kernel discussions
Topic: View Blog (restored)
Replies: 3
Views: 9999

Depth zoom

Part of the scene outside the Z range of the View Volume is rendered, do it is not visible. Normally the range should include al objects, otherwise it can be very confusing. Making the range too long is not good as it changes center of the viewing rotations which navigating interactively. It also re...
by Nick
Thu Aug 01, 2024 1:13 am
Forum: DG Kernel discussions
Topic: Location, Orinetation, Frames blog
Replies: 4
Views: 6529

Frames and Transformations

Every frame defines an affine transformation of 3D space: For a given frame fr, the transformation transforms each point pt(x,y,z) into the point, which has the same (x,y,z) coordinates relatively to fr. Transformations can be multiplied, of course: (A*B)(x) = B(A(x)). This definition agrees with th...
by Nick
Thu Aug 01, 2024 12:48 am
Forum: DG Kernel discussions
Topic: Location, Orinetation, Frames blog
Replies: 4
Views: 6529

Multiplication of frames

We have defined a frame as a point and three vectors, so if you have a frame fr . and another frame frOther , you can construct a new frame by applying fr.ToGlobal() to the elements of frOther . This is what IFrame_DG IFrame_DG.ToGlobal(IFrame_DG frame) does. This is considered as multiplication of ...
by Nick
Thu Aug 01, 2024 12:42 am
Forum: DG Kernel discussions
Topic: Location, Orinetation, Frames blog
Replies: 4
Views: 6529

Converting coordinates from frame to frame

If you have two different frames fr0, fr1 and a point pt relative to fr0, use

Code: Select all

PointDg ptGlob = fr0.ToGlobal(pt);
PointDg ptInFr1 = fr1.ToLocal(pt);
The same for all other basic types: vectors, lines and planes.
by Nick
Wed Jul 31, 2024 3:49 am
Forum: DG Kernel discussions
Topic: View Blog (restored)
Replies: 3
Views: 9999

Programming

More precisely View Volume is defined as a box (three ranges) aligned to a set of axes (frame) called Eye Frame. To access and manipulate Eye Frame use dgk > GetView() > IView_DG > IView_DG.GetEyeFrame() > IFrame_DG. For an example, Calls to IFrame_DG.Translate() on the interface will result in pan....
by Nick
Tue Jul 30, 2024 1:09 am
Forum: DG Kernel discussions
Topic: Location, Orinetation, Frames blog
Replies: 4
Views: 6529

Location, Orinetation, Frames blog

Hello friends This is a restoration of another important thread containing informal discussion of frames. It is likely will be done is several passes. In DGK we use Frame notion to represent and manipulate the very important location and orientation. Other software often use quaternions and/or matri...