Next to Battlestar Galactica, SGU,BAB,etc.,etc.,........
'Big Bang' is definitely my favorite show.
Sheldon Cooper is my all time hero, or maybe Spock
Sheldon Cooper is my all time hero!
I am both honored and humbled by the compliment Al.
Hope this image isn't too small
Bucky is indeed quite a character, but I do know this, he is one super smart cookie. Bucky really does know his stuff, if you go along for the ride, practice what he shows you and you'll learn plenty. There's a whole lot more out there but Bucky can give you a great head start.
Although I'm not an educator, If you get stuck on something I can maybe give you a heads up on some code.
There are some strange concepts to get your head around, even then, this won't stop you writing and using good code.
But I gotta tell ya this, unlike C++, Python is a very forgiving language.
As an analogy;
If you make a mistake in C, you might loose a finger.
If you make a mistake in C++ it'll blow your arm clean off.
If you screw up in Python, you'll mostly get the likes of;
"traceback", then, what really means "you might want to do this differently dude"
Learning Python should be a smooth ride.
Besides myself, there are literally thousands of Python users out there,
that will happily give you useful advice.
Bucky isn't the only good guy on you tube either, there are many others.
David Ranum is another, he's real good and in a way a bit like me, he goes deep, deep,
into the meanings and concepts and leaves no stone unturned.
I'm gonna post a little 'stall this thread' message and wait to see if there's
any interest for advancing. So I'll keep an eye on this and you can post a question
Now that there is a visual representation of the 2 G-code lines, we may
be able to see the potential for further extraction of information from
the same 2 G-code lines.
We all know computers are blind and all they can do is count real fast,
a program needs as much information as it can get.
I'm going to leave this for a while and see if there's interest.
If there is, we can play 'vectors' and 'quadrants'.
I still don't understand the purpose of "extracting" this additional info from the g-code?
Mach3 2010 Screenset
(Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)
This tread rambles a bit
Going back to post #1
The Gcode created by your program(s) will slow the machine down at abrupt changes of direction ? Or possibly it will "roll" around sharp corners as seen in the better CAM softwares ? Examples of creating Gcode with python are plentiful but I can't think of any that have that function. Surely the plan isn't to replace Mach with a with something written in an interpreted language ?
I'm just trying to get a handle on the endgame.
Anyone who says "It only goes together one way" has no imagination.
One program I wrote takes output from a few cad programs, processes it,
then outputs it again to Mach3, in a certain way that's good for me.
I have built my program in a way that it can store hundreds of process methods that result in changes to the way a cnc will behave during operation.
I can change these methods any time I want and do it in seconds without having to 'pop it's hood'.
My program isn't a text editor like 'notepad' either, although I can write code
in notepad and it will process that also.
I can leave out things like; M words, F words, G4 P words, Z words, etc.,
It can take care of all the boring stuff for me.
I can still include any of these words if I want to and if I make a mistake,
it won't hang up, or even tell me, it just puts it right.
It doesn't just look at code words as text, it processes their values as well.
So far it handles a few code flavors and now I'm going to add HPGL 2.5D.
Some might say, "why would you want to do that?".
Well... because I can.
I have a real old cad program that can't output code that Mach3 needs.
In fact it's output is completely unreliable. But it's still handy to draw with,
so my program takes that ol' cad output and gives it to Mach3 freshly packaged.
While it's doing this, it'll insert additional code for anything else I want.
The program just rips code, deals with it, then spits it out to anywhere I want it to go and does so as fast as my motherboard can handle it.
I want to do some 'fine detailed' engraving, sharp corners included and I'm not going to be doing this at high speed either.
Mach is like my screwdriver, and if my screwdriver isn't right for a job, then
I'll get out another one that is.
It isn't personal so I wouldn't have hard feelings toward the screwdriver because of it's size or shape. I like my screwdriver.
So you see for almost everything, I don't have a problem with Mach.
I like it a whole lot.
But I can't just 'pop it's hood' and tinker with it, so I'll make myself another.
Just maybe, mine won't be much better than a smart toaster, but then it's only going to cost me some spare time.
Just wanted to thank you again for pointing me to the bucky youtube python tutorials.
A long time ago I bought an introductory python book, but just never could get into it.
So far, though, I've gone through 34 of the 43 bucky video tutorials, and his quirky style kept my attention while making the basics of the language understandable.
I will continue through the rest of the videos, and then I should have enough background to tackle the book as well as do my own programs (and it looks like I can use python to handle a number of tasks that I'd like to accomplish).
Looks like the light went on doorknob, The Python force is indeed strong, If you get stuck on anything, don't panic, you can ask me or as I said, there are many who will help you.
Python was built on purpose for everyone, it's not just for those 'I'm so clever, know it alls'.
Last edited by bernster; 07-04-2011 at 06:52 AM. Reason: bad grammar
A kind of question has demanded an answer.
But some readers may suffer for no apparent reason for it anyway.
I'm sure that normal every day CNC Zoners, are forgiving creatures.
And not being one to mention names ...
< ger21 > # darn, I thought I hid that, sorry Gerry :-).
Well, I see what you mean and there's probably many others thinking the same
thing. No one is wrong for thinking the same thing.
Your observation is quite valid.
The words on the 2 G-code line themselves are indeed enough for an 'indexer'
to process and yes, we do have one or two peices of the puzzle.
The idea here though, is to create an actual indexer itself.
I think the 'Heading' for this thread might be a small clue at the least :-)
So far, I have posted a small amount of insanely simple math as a 'primer'.
This math would be used in the construction of an indexers' 'functions',
'functions' are the building blocks of a program.
A 'function' is created to solve problems.
It can take whatever type of information you give it, examine it in a
logical way, then give you back nothing, some answer you were looking for,
or take some other action that you have already given it permission to carry out.
Functions can even call on other functions to give you some other quite different
result and the road to getting there can be as complex as a sailors' best knot.
But there's no point yet writing any program code.
The math we have at this time, can only be used to construct 'functions' that
could return to us;
The start point for an arc
The arc distance
The end point of the arc