![]() | |
| Home Page | Mark Forums Read | Today's Posts | My Replies | Classifieds | Reviews | Photo Gallery | Web Links | Share Files | Advertise With Us | Ad List |
| |||||||
| OpenSource Software For the Discussion of Opensource CAD/CAM and NC shareware software etc) |
| This forum is sponsored by: |
![]() |
| | LinkBack | Thread Tools | Search this Thread | Display Modes |
|
#1
| |||
| |||
A "White" paper: Prolog: (A very long opinion....could bore you, annoy, entertain, or even excite..depends. Just a Farmer's opinion on how the Shareware/Freeware community can make CAD/CAM/CNC package that would make serious impact in this business... please excuse terminology....I'm more used to talking about equine issues, trucks & tractors, and dirt bikes than CAD/CAM!) Goal: I would like to see a shareware community where programmers can show case their talents and develop a suite of capabilities that can compete with anything in the business today. Why do that? Same reason open source "vbulletin" exists...brings the business back to the programmers where they can sell services directly to businesses over the internet. Eliminates all kinds of baggage in the CAD/CAM and Graphics types of business. Winners are the innovators and programmers along with a customer base that enjoys the lower cost & greater pool of talent to support these types of products and services. How could this happen? Learn from history. Many of the current successful business built a product & business model assuming third party development to add to capabilities and therefore market place. The first part of the puzzle has to be a development environment that includes things like standard database utilities with standard API and/or command interfaces Shareware programmers can use to "plug" their ideas into. A "model" to look to is those many modelers out there that have a full set of database creation and management. Think of all the App's that run within the Autodesk Environment, ACIS or Solidworks, etc. Why not have a share-net modeler that has those same types of database, modeling, IO, graphics, picking things available for developers? Guts: How might this look? 1) Start with a standard database environment that all Shareware types can use to include the following type extensions: a) Data types to include Geometry from line,arc,spline, surface types, solid constructions of the base geometry types, toolpaths as geometry, coordinate systems as geometry, etc. b) Save/restore functions in a public domain format....pedes, iges, or from SCRATCH! c) create, delete, and manipulation functions such as copy, rotate, mirror, translate, etc. d) The ability to store coordinate systems as geometry...(and also ability to attach to all geometry types, including toopath entities and SUB entities)..(ie, a series of nodes in a spline w/ I,J,K info that could be both part of a toolpath or raw geometry. e) extendable for shareware types to add their own geometry/data classes...and then have the benifit of all the data base utility functions already DONE.. f) Define a standard way to evaluate and output geometry/entity classes (NEVER know whats in the future!) g) Provide a standard style of "API" for shareware types to follow as they extend these functions. Might use the CLfile out, save/restore as the samples. h) Have a display & picking capability using as "industry standard" a display mechanism possible. Allow picking to be either extended or replaced by shareware types, but have a working sample. The idea is these standard type things are taken care of and share ware/ open source contributers can spend their time building neat new and useful functions to evolve the overall package into something that can compete at ANY level. IF there is an environment out there ..... start there. I'm not familiar with an open source solid modeler or that type of development environemt. 2) Having an open architecture is the key...must be able to allow extentions. Especially in geometry types(classes) and toolpath types. My particular preference is using linked lists of objects. For example a linked list of objects defining a toolpath. The "Begin" object has some basic information including Partno, Machine number and just general text info..but it points to the next which might be a "Motion" object the has text & numerical info like feedrates, and points to geometry. The geometry can be edges, lines, arcs, splines, loops (lists of curves), etc. The toolpath evaluation to create CLdata info needs to loop through these lists and evaluate each object to define data for output...but I'm getting ahead and its JUST an opinion. The reason I like that concept is because it allows the "output" evaluation code to be a module AND therefore depending on the application could output something like a CLDATA files or be drivers for servos....with ability to modify those tool-object with intellegent feedback...again I'm off subject. (Also notice "Motion" vs. "Cut-to"....never know what you ant to DRIVE with that style entity!) 3) Need to avoid Patent or liscensing issues & May need to have either a public domain modeler to start from or may need to build from scratch...organizational head ache!!!! Didn't "Padl" used to be public domain? Is there anything out there complete & robust enough to start with? How about from NIST/DARPA and other research efforts? Also needs to be a safe place to store this modeler thats accessible to the shareware community. Needs a proceedure where forum "moderators" can review code before they add to the pool...guarantee once something like this gets capable enough to be useful there will be those who want to kill it before it grows. 4) Need a standard post processor type function either embedded or have a simple CLDATA output/ G-post concept in shareware. Makes the system useful. Make them replaceable and/or extendable. This along with a part save and restore function makes the system useful AND gives shareware developers a sample of code to work with when they build their own "output" interface drivers. 5) Nice to have a GUI builder & have integrated with standard display & picking functions. (I remember Cimlinc's and it allowed a tremendous amount of ownership at the user/customer without turning into a maintenance nightmere). Again to be a sample but it also would allow endusers and hobbiest the ability to customize groups of functions and therefore have ownership of their own toys...a huge interest magnet. 6) Have a simple milling areaclear and profile function for an example for shareware types to follow. (Along with toolpath entity to post or to CLDATA out to post). A hook to get endusers to spend time as there is useful functions. More critical is the "template" for shareware developers to use as they build toolpath and other geometry creation type functions. Shows interaction with the database, graphics, picking, file in/out, etc. 7) Have a simple Lathe rough & finish function as an example. Ditto above as the geometry of "Lathe" is way different than milling functions. 8) Have a simple modeler to make things like lines & arcs with trimming as an example to add geometry function. Ditto again to show how new geometry modeling functions can interface..... 9) Have loop or profile entity types defined. With offset functions. This is one of the hardest things to get right. If there is a robust and reliable set of functions that shareware developers can use and grow, things will happen MUCH faster. 10) Have some trimming functions defined...certainly enough for those guys doing profile and areaclear type toolpaths to use. Ditto above again for motive. 11) have some slice (surface surface intersection routines) ..yea...ditto 12) As shareware developers add functions, have the functions (like slicing) in a form they can be used by other requiring to slice and return data so results of one shareware project can accellerate another one...AND maybe if there is enough communication different guys with similar projects can split up base functions in the beginning of this effort so everyone wins .......almost like a company. Summary: Guys, if you build an environment like this, people will be able to contribute and make a system over time that can rival anything out there....then you independent types will have a customer base as the industry see's this as a real option and wants to HIRE folks to help train, setup, maintain, customize etc. Same as vBulliten, and Network environments have been in the past. Same as a whole host of modelers have done in our industry but without the high cost of entry and staying with a modeler for you in this shareware world. Also make this where it can creep into the GIS world and the marketplace will be far greater than anything we have ever seen in the CAD/CAM/CAE world. Those GIS guys are growing in a similar way as we did...its about data, geomemetry to display, manipulation, inquity of data,display of info derived from that data etc. to build businesses around this huge expanding database that is the GIS world. One thing I know we all need to realize, no one in the real CAD/CAM business world see's shareware as a viable solution or threat (same thing) because there isn't a coordinated effort or even a standard enough development environment conducive to the development of a full function suite of CAD/CAM solutions ...yet. Figure out how to build the foundation first and the CAD/CAM world will change the way it does business. Several businesses predicated their plan with selling an environment so 3rd party developers can add to their set of functions; instead of being competition they get those developers to invest in expanding their marketplace! Kind of like the operation system concept for graphics applications. WHY not build one in freeware/shareware? Give a place for the independent types to build and sell their talents without being tied to these other licensing anchors. This would certainlychange the business models for some wouldn't it. The web is a wonderful sales and marketing tool. By the way...might be worth PAYING those maintain a Bulletin Board for tracking all this!!! Who knows, if you out there in on the web make this happen; maybe one of the existing products will tumble out from behind its corperate wall for every one to play with...but there has to be a reason to drive one out! (Maybe a share-ware develpment package option...what do you think?) Also think how much simpler data transfer in this CAD/CAM/CAE/CNC/GIS world would be if one modeler became the standard for developers... PS: Back to the horses. Need to "muck" the stalls and work a broken down Race horse with an amazing history. Just makes me sad to see how much they give over their racing career only to be tossed out to feed the French! (They really have done a good job of understanding the CAD/CAM world haven't they? And no I don't have anything against the French.. just don't like seeing dedication rewarded in that way (horses!)) Last edited by weimedog; 03-25-2006 at 08:08 AM. |
|
#2
| ||||
| ||||
| http://www.opensource.org/index.php http://www.linuxcnc.org/ Some of what you say, reflects a point many people miss. It's all about data. "build it and they will come" so to speak. if somebody wants I'll setup part of my website for such a project. i.e. dedicated forum, repository... I've got more space than I will ever use.
__________________ Phil, Still too many interests, too many projects, and not enough time!!!!!!!! Vist my websites - http://pminmo.com & http://millpcbs.com |
|
#3
| |||
| |||
| one problem with this is that it seems to often take 1 dedicated programmer who writes a core dataset, something sooo attractive and usefull that others cannot help themselves but contribute... something like GIMP is a good example...
__________________ Design & Development My Portfolio: www.robertguyser.com | CAD Blog I Contribute to: http://www.jeffcad.info |
|
#4
| |||
| |||
| Maybe the answer comes in taking open source software and re-interfacing to achieve a new product. Reinventing the wheel has always been a problem in software development. Look at XML and the attempts to make it the savior of Ebusiness. There are XML standards for all sorts of data, including CNC. XML may well be the data model you need to have a seamless transfer between products. An example is XMI used to move UML model data between different development products like Rational Rose, ArgoUML, etc. The standard takes everything done to the gnats behind. However, you can describe your model using only the minimum, and that is OK. I have alot of experience with this and would be willing to suggest and/or develop an XML model of this dataset. Can someone start describing the dataset? RipperSoftware |
|
#5
| |||
| |||
| Let me add that AutoCAD uses a XML format called DesignXML. This is supported by AutoLisp XMLin and XMLout. There are several opensource projects that attempt to deal with this standard and convert to other standards like SVG. There are opensource graphics programs that read SVG. What about opensource CAD and CAM using DesignXML? RipperSoftware |
| Sponsored Links |
|
#6
| |||
| |||
| Here are some open source products: OpenCascade http://www.opencascade.org/ BRL CAD from the US Army http://www.brlcad.org/ SagCAD http://sagcad.sourceforge.jp/ CAM Simulator http://www.codeproject.com/docview/c...&select=873174 FreePCB http://www.freepcb.com/ |
|
#7
| ||||
| ||||
A search of Autodesk's discussion groups seems like it was dropped with AutoCAD 2004.
__________________ Gerry Mach3 2010 Screenset http://home.comcast.net/~cncwoodworker/2010.html (Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management) |
|
#8
| |||
| |||
| In a theoretically perfrect society, your idea would probably gain traction and move. However, when a group of people can find that they can make MONEY at creating software, things change and do so quickly. Besides, things like food, clothing, houses, cars, HEALTHCARE INSURANCE, gas, taxes, etc take their toll on "open source" projects. Somewhere, somehow, somebody has to make a living or an income off some part of it - nothing is free - everything has value. Perhaps the most valuable thing is TIME and time spent writing code ultimately deserves more than recognition. All the computer stuff that has been done was either an offshoot of governmental/military pr0jects and/or engineers who worked in the industry who spun off what they learned into private enterprises. Why? Usually because the "suits" didn't let them be creative so they did it on their own. It takes money to finance development. Taxes and/or industrial grants fund university based development and private industry finances code/technology that is developed for sale. There are many projects that become "open source" due to any number of reasons but somehow, somewhere someway, somebody's bucks paid for the seminal roots of the works. "Hobby development" only goes so far, especially when someone down the line will use it to make a profit - again, DIY only goes/carries so far as many folks would love to make their hobby their profession. I am lucky enought to make a profit at mine but as lucrative as it is/can be, it ain't enough to live off of (yet).... Having voiced the capitalistic mantra, I'd love to hear a reason/explanation how to get around it.... especially in todays economy in my industry where the stalwart OEM's are pretty much all near bankruptcy.... Last edited by NC Cams; 03-25-2006 at 01:25 PM. Reason: fix typos |
|
#9
| ||||
| | ||||
Any open source project might require that programmers use the same language. However another option is to build a DLL library of functions that most languages can create. The operating system on which to base is another issue. WinXP is the flavor of the month until WinVista is stable. I no longer support the Win98 platform as compatible for my applications. Linux is unknown to me. And I like it that way ![]() I would like to contribute to an CNC Open souce program. Ref: http://www.imsrv.com/mtb/ http://www.cadcamcadcam.com/index.as...WPROD&ProdID=4 http://www.cnczone.com/gallery/showp...00/ppuser/3155
__________________ Wayne Hill www.codemangler.com Last edited by WayneHill; 03-25-2006 at 01:23 PM. |
|
#10
| |||
| |||
| A few reasons why it is absolutely possible and as time goes on chances increase it will infact happen. 1) So many companies have come and gone...the pool of people who have done this type of thing increases with these industry changes. 2) Some of the big guys are close to financial distress and need to find a different business model....might pickup on this as a way to shrink their foot print. 3) If they don't and crash and burn, where do their ex-programming and application types scratch their itch?? A way to turn former work skills into furture jobs. Or at least have a place to keep that interest alive in a hobby format. 4) The need for some (many) small manufacturing / design houses to cut operational expenses will drive them to find solutions without yearly liscensing fee..don't want the operational overhead showing up on the bottom line... 5) The inovation side of this CAD/CAM world is ABSOLUTELY stagnant. Inovative types Need to have a way to "explore" without an impossible entry price...and mystic built up from years of having the big guys control inovation & distribution of that stuff. A viscious circle....this is a way to break it once and for all. 6) It would be FUN to have it work and go make impact..especially for the CAD/CAM refugees from all that past history & especially for those who infact were inovators from the past and are still around like "solutions" looking for a problem! Build an environment where they can be up and going quickly and the flood gates will open with neat new App's....(Take the infrastructure part of the development away so we can focus on....application stuff...the FUN stuff)..programmers would LIKE that if they could afford it...kinda like software LEGO's. Buy the way, the past may have had the fun and ability to inovate because the industry was new....I have learned over time there is NO shortage of VERY smart and inovative people..I would love to give the "new" generation an environment that was as much fun and exhilerating as we had. Isn't that every parents wish? 7) The researchers of the world have been trying to take essoteric thought and put it into a forum they can show off with since the beginning of cyber time. They NEED something like this that for REAL...need a way to show off their research proof of concepts....they don't need to keep re-inventing a development environment as it is expensive. They ALSO don't need to be continually tied to someone elses only to see entire market segents to their research closed out because they are tied to a specific modeler or development environment..... 8) General industry has been fighting the data transfer world since the beginning... this is the only way to solve it for the future. What are the real hurdles? 1) Concensous of a language. a) My thoughts is the language needs to be one that has a PAST and will have a FUTURE. The past to draw those out of the wood work who have developed and would like to revisit that part of their life ...for FUN. The future so that the legacy of that past will be supported and with new plateforms as this hardware revolution continues. Also those who invest time now will have their evolving legacy supportable in the future. The language doesn't have to be flashy. Just stable as hell and accessible. 2) A FEW people agreeing on an architectures....doesn't have to be a world wide political event. Just a few who can design and then implement enough as I had layed out above to break the "infrastructure" barrier down to where CAD/CAM functions can have a place to live in Shareware all can use. Having an environment thats useful will do two things: Will encourage new development because its easier and more instant gratification. Will begin to guide how application extensions are architected....catch twenty two isn't it? BIG responsibility! Oh yea...in a useful environmet with a functional capabilty set along with a packaging that can infact be used in the real world....business will start wanting even NEEDING to consider this option and then the down stream services business model will become real. 3) Those FEW people staying on focus for a while....almost like a company? Again the thing that has hurt "shareware" type things in the past AND the difference between "shareware" projects and companies IS that direction and focus on infrastructure up front. My bet is there is WAY more talent and capability cruising this type of place than most companies have in thier roster....focused and results will happen. Why again do something like this??? Look at all the techy types making a living off the internet. Independent small business supporting local business and also selling their stuff over the internet. Stuff like websites, bulletin Boards, support services, even products. This could be the same (on a smaller scale) but similar in structure. Gives a place for those who ARE going to be on the street as the industry contiues to shake out a place to make a living without the anchors which are...drifting. Give a place for those ON the street to play and keep their skills sharp. Gives a plave for those who been there and moved on but still are interested a place to play. Gives a forum for discussion thats REAL and the open sharing of ideas can really turn into a 800lbs gerilla of a software development environment and therefor set of applications... |
| Sponsored Links |
|
#11
| |||
| |||
| I guess the other thing that has struck me is looking at this web site and seeing ALL the excitement and inovation around CNC....the software side needs to follow. Right now looking at this industry after 10 years is SO dissapointing!!! its really a case of SOSDD!!!! Amazing. More reasons...lets say this infact does happen....there will be a feeding frenzy when the products start becoming accepted in industry to migrate business to the new. Yet another business plan to sell services. The FIRST BIG GUY to figure this out will have a leg up on the competition as THEIR environment and therefore services will be more in demand. It wouldn't suprise me to see one or more existing S/W companies see the logic of this as a way to get back into the game and do our work for us...imagin a competitve battle to get development environments into free ware because it will be infact survival...the only way for that to happen is to start and make this real. Then there is no risk. Either one is up and running and the rest need to follow...or if one gets close an industry developed environment will pop out that is better as a survival/new business stratagy. Either way everyone wins. I mean EVERYONE! No one ever thought IBM would dump the PC business and go service 15 years ago either. Last edited by weimedog; 03-26-2006 at 08:33 AM. |
|
#12
| |||
| |||
| Just a note IBM never wanted the PC business....it was started by a group within IBM..which was quickly eliminated.... Regarding "Open Source" the only person that believes they win is the buyer....well at least until they start looking for support or enhancements....all the big players that have "Open Source" as their corporate strategy have all learned that they must charge for something.....so they create development tools that are suppose to help deal with the "Open Source" environment ..... It absolutely amazing how many software programmers work on "Open Source" stuff....I suspect most do it on their own time while working for someone else....just think..."How does someone support themselves, if everything they create is free?" |
![]() |
| Currently Active Users Viewing This Thread: 2 (0 members and 2 guests) | |
| Thread Tools | Search this Thread |
| Display Modes | |
| |