Jump to content



Photo

3D Axis - Play with it!


  • Please log in to reply
36 replies to this topic

#1 Yashied

Yashied

    Happy in Moscow

  • MVPs
  • 2,512 posts

Posted 21 December 2009 - 08:22 AM

LAST VERSION - 2.2
14-Mar-10

3D Axis is designed to draw graphs of almost any trigonometric functions that can be specified as a single function - f(a,b). The functions can be specified in one of the three coordinate systems: cartesian, cylindrical or spherical. By default, you can use any functions that are defined in AutoIt (Cos(), Sin(), Sqrt() etc.), but you can also import your own functions, for example write a function for Fourier series. At the beginning, try to play with the examples that appear below (Examples.3da). Just drag this file to the main program window, select any graphs, and click "Draw" button. But do not draw all graphs at once, as this may take a long time. Try to come up with their own functions, it all depends on your imagination. If anyone got beautiful graphs, please post it in this thread (better in .3da file).

3D Axis has one drawback - the size of main program window is more than 1250x860 and can not be resized that will fit not for all monitors! Therefore, recommended minimum size of your monitor should be ~ 17-19".

The any questions or comments about 3D Axis please post it in this thread. I will be glad to any feedback and suggestions.


Posted Image



Posted Image Posted Image Posted Image Posted Image



Files to download

Binary
Redirection to 3DAxis_bin.zip, 1.11 MB

Attached File  3DAxis_bin.html   136bytes   1349 downloads

Binary (GUI smaller version, size of the client area - 1101x733)
Redirection to 3DAxis_small_bin.zip, 1.11 MB

Attached File  3DAxis_small_bin.html   142bytes   868 downloads

Source
Redirection to 3DAxis_source.zip, 668 KB

Attached File  3DAxis_source.html   139bytes   814 downloads

Examples
To draw graphs of the functions from the Examples.3da, just import or drag and drop this file into the program.

Attached File  Examples.zip   527bytes   595 downloads

Edited by Yashied, 29 February 2012 - 08:51 PM.








#2 UEZ

UEZ

    Never say never

  • MVPs
  • 3,616 posts

Posted 21 December 2009 - 08:41 AM

Is this not working on Vista and higher OS?

Changed line 2805 to Case 'WIN_2000', 'WIN_XP', 'WIN_2003', 'WIN_VISTA', 'WIN_7'

Working properly on Vista!


Very nice program and code demonstration!

UEZ

PS: 5* from me

Edited by UEZ, 22 December 2009 - 07:50 PM.

 
The own fart smells best!
Her 'sikim hıyar' diyene bir avuç tuz alıp koşma!
¯\_(ツ)_/¯


#3 Yashied

Yashied

    Happy in Moscow

  • MVPs
  • 2,512 posts

Posted 21 December 2009 - 09:19 AM

Is this not working on Vista and higher OS?

UEZ

Ahh, totally forgot about it.

Edited by Yashied, 21 December 2009 - 09:52 AM.


#4 Yashied

Yashied

    Happy in Moscow

  • MVPs
  • 2,512 posts

Posted 21 December 2009 - 12:23 PM

Fixed.

Thanks UEZ.

#5 Yashied

Yashied

    Happy in Moscow

  • MVPs
  • 2,512 posts

Posted 22 December 2009 - 06:14 PM

Fixed a bug causing the wrong release resources in OnAutoItExit() when you exit the program.

#6 Yashied

Yashied

    Happy in Moscow

  • MVPs
  • 2,512 posts

Posted 26 December 2009 - 02:18 PM

I'm surprised the number of posts. One of two things: either very few people use the "big" monitors, either the mathematics has lost its popularity. A pity.

;)

#7 corgano

corgano

    Universalist

  • Active Members
  • PipPipPipPipPipPip
  • 724 posts

Posted 26 December 2009 - 10:14 PM

A little of both, actually!

Got a lower res version?
0x616e2069646561206973206c696b652061206d616e20776974686f7574206120626f64792c20746f206669676874206f6e6520697320746f206e657665722077696e2e2e2e2e

#8 Mat

Mat

    43 38 48 31 30 4E 34 4F 32

  • MVPs
  • 4,042 posts

Posted 26 December 2009 - 11:05 PM

You know... My school just paid out a lot of money by the sounds of it for a program with not a lot (if any) bonuses to this. They had the ability to drag the graph to turn it though. I like the ability to save it as a picture, that will probably come in very handy.

I don't know where I'm going, but I'm on my way.


#9 KaFu

KaFu

    Hey, it's just me, KhaFoo...

  • MVPs
  • 3,166 posts

Posted 27 December 2009 - 04:59 PM

One of two things

Three... lots of people are on Christmas holidays :evil:... awesome code ;), pity I'm out of university for 10 years now :evil:...

#10 James

James

    jbrooksuk

  • MVPs
  • 9,470 posts

Posted 27 December 2009 - 05:10 PM

Oh wow. That is incredible. Visually, it doesn't look like AutoIt to me, but the code says otherwise. Very very nice Yashied!

#11 Ady

Ady

    Seeker

  • Active Members
  • 18 posts

Posted 27 December 2009 - 07:01 PM

Aaaaam Yashied?

Could you fix the program for 1024 x 768? Or i`ll try to figure out how to do it...

The program is awesome! 

Keep up the good work  :) ;)

And about posting, i don`t know how many of you like math, no offence but i sure do!   :evil: :evil: :idea:

Edited by Ady, 27 December 2009 - 07:11 PM.


#12 Yashied

Yashied

    Happy in Moscow

  • MVPs
  • 2,512 posts

Posted 27 December 2009 - 08:41 PM

Ady, corgano

OK, done. Now the size of the client area - 1101x733, see first post. This is the maximum that I can do.

;)

Edited by Yashied, 27 December 2009 - 09:21 PM.


#13 Melba23

Melba23

    Yes, me!

  • Moderators
  • 15,387 posts

Posted 27 December 2009 - 08:56 PM

Yashied,

It is not that we do not like maths.....we are just lost for words! ;)

M23

Edit: Speeling, or rather tpying! :evil:

Edited by Melba23, 27 December 2009 - 08:56 PM.

StringSize - Automatically size controls to fit text - ExtMsgBox - A user customisable replacement for MsgBox

Toast - Small GUIs which pop out of the Systray - Marquee - Scrolling tickertape GUIs

Scrollbars - Automatically sized scrollbars with a single command - GUIFrame - Subdivide GUIs into many adjustable frames

GUIExtender - Extend and retract multiple sections within a GUI - NoFocusLines - Remove the dotted focus lines from buttons, sliders, radios and checkboxes

ChooseFileFolder - Single and multiple selections from specified path tree structure - - Notify - Small notifications on the edge of the display

RecFileListToArray - An alternative to _FileListToArray with user-defined include/exclude masks, maximum recursion level, sorting and displayed path options

GUIListViewEx - Insert, delete, move, drag and sort ListView items


#14 Mat

Mat

    43 38 48 31 30 4E 34 4F 32

  • MVPs
  • 4,042 posts

Posted 28 December 2009 - 11:32 AM

It is not that we do not like maths.....we are just lost for words! ;)


Yer, Mathematicians never were good with words... Numbers have always been far easier and logical.

I don't know where I'm going, but I'm on my way.


#15 Yashied

Yashied

    Happy in Moscow

  • MVPs
  • 2,512 posts

Posted 11 January 2010 - 08:20 AM

Many people ask me how to draw graphs in the plane of monitor. Here is a function for the transformation (projection) 3D coordinates (X; Y; Z) on the plane (Xp; Yp).

Func _2D($X, $Y, $Z, $D, $I, $T, ByRef $Xp, ByRef $Yp)     Local $DC = Cos($D * $Pi / 180)     Local $DS = Sin($D * $Pi / 180)     Local $IC = Cos($I * $Pi / 180)     Local $IS = Sin($I * $Pi / 180)     Local $TC = Cos($T * $Pi / 180)     Local $TS = Sin($T * $Pi / 180)     $Xp = $X * ($DC * $TC - $DS * $TS * $IC) - $Y * ($DS * $TC + $DC * $TS * $IC) + $Z * ($TS * $IS)     $Yp = $X * ($DS * $IS) + $Y * ($DC * $IS) + $Z * ($IC) EndFunc   ;==>_2D

Is it true beautiful formula? Appointment of variables $D, $I and $T, you can understand after playing with the first three sliders in the program (Rotate, Skew and Twirl). Function does not take into account the perspective and other 3D effects.

#16 jchd

jchd

    Whatever your capacity, resistance is futile.

  • MVPs
  • 3,256 posts

Posted 12 January 2010 - 12:45 AM

Function does not take into account the perspective and other 3D effects.

Kudos for writing this impressive 3D-Axis in AutoIt!
Did you have a need for that which wasn't covered by some existing maths package, or was it for AutoIt fun or challenge?
SQLite official website with full documentation (may be newer than the SQLite library that comes standard with AutoIt)A work-in-progress SQLite3 tutorial. Don't miss other LxyzTHW pages!SQL tutorial (covers generic SQL, but most of it apply to SQLite as well)An excellent eBook covering almost every aspect of SQLite3: a must-read for anyone doing serious workPCRE v8.32 regexp pattern documentation. AutoIt uses a slightly older version so that more advanced features are not all available.RegExp tutorial: enough to get started

#17 Skrip

Skrip

    Psychonaut

  • Active Members
  • PipPipPipPipPipPip
  • 2,340 posts

Posted 12 January 2010 - 04:44 AM

This is amazing. Very nice work.

We're trapped in the belly of this horrible machine.And the machine is bleeding to death...


#18 Andreik

Andreik

    Bishop

  • Active Members
  • PipPipPipPipPipPip
  • 2,498 posts

Posted 20 January 2010 - 09:51 AM

Why I get error "Read file error"?
When the words fail... music speaks

#19 Yashied

Yashied

    Happy in Moscow

  • MVPs
  • 2,512 posts

Posted 20 January 2010 - 01:34 PM

Why I get error "Read file error"?

What percentage of shows in the progress bar at this time?

Edited by Yashied, 20 January 2010 - 01:34 PM.


#20 Andreik

Andreik

    Bishop

  • Active Members
  • PipPipPipPipPipPip
  • 2,498 posts

Posted 21 January 2010 - 12:16 AM

Don't know exactly, maybe 80%.
When the words fail... music speaks




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users