609.127 aktive Mitglieder*
4.854 Besucher online*
Kostenfrei registrieren
Einloggen Registrieren

Alibre Design, Tipps und Tricks

Beitrag 12.09.2010, 19:35 Uhr
sharky2014
Level 7 = Community-Professor
*******

QUOTE (DerDenDuNichtKennst @ 12.09.2010, 20:22 Uhr) *
Hallo Sharky,

ich denke mal Du hast nicht im Ansatz begriffen, was ein CAD macht oder nicht macht. . . . .
Mit der CAD berechne ich keine Koordinaten im Raum und spucke dann Koordinaten aus . . . . sondern ich visualisiere meine Ideen in Bits und Bytes.
Und mit visualisieren meine ich nicht irgend ein Drahtgeflecht sondern Flächen und Volumenmodelle.
Nichts anderes... Warum soll mein CAD Koordinaten ausspucken??? Ich will das ganze als 3D Modell in Echtzeit sehen. . .

Und nochmal die "unintelligenten" Programmierer, die sie ja Deiner Meinung nach sind, weil sie ja unintelligent Programmieren,
diese werden mit Sicherheit dazu getrimmt schnellere CADs auf den Markt zu bringen um der Konkurrenz Kunden abzulaufen

Stichwort Zeit ist Geld und Zeit habe ich nicht. . . .

Nehmen wir mal an, Dein Alibre Design CAD müsste auch NUR Koordinaten berechnen, dann sieht es mit dem Faktor gleich ganz anders aus.
(und da hab ich meine Zweifel ob Du das realisierst was auch die Kollegen meinen )
Denn die CAD ist meistens ein Hybridmodellierer sprich Fläche und Volumen also ein vielfaches aufwendiger als Dein "CAD Programm"

Also nochmal das ist so nicht zu vergleichen. . . so oder so dein Faktor ist einfach falsch.

Gruß Christian



Mal zur Klarstellung:

Ich bin Hobby-Anwender.

Ich habe allerdings eine Programmierer-Historie (Hobby), die bis in die 80er Jahre zurückgeht.

Und ich habe eine Woche mit ALibre gearbeitet.

Dabei ist mir SOFORT aufgefallen, daß da Probleme mit der Rechengeschwindigkeit bestehen.

Das Programm rechnet nicht, sondern das ist eine alte Frau am Krückstock, sage ich mal mit 20 oder mehr Jahren GEfühl im Bauch für Programmierung.

Nun war ich so freundlich, darauf hinzuweisen, daß man dasselbe, was Alibre berechnet, 2000mal schneller berechnen kann.

Der Faktor 2000 ist nicht 5,6,8 oder 64.

Du verstehst den Unterschied zwischen 1 und 2000?

Und jetzt machst du mir noch Vorwürfe deswegen!

Deine Kollegen von der CAD-Programmierabteilung sollten statt dessen mal lieber überlegen, wie sie so eine lahme 3DCAD-Henne dazu bringen, daß die ein wenig rechnet. Ich denke mal, die anderen Programme sind genauso lahm.

Mir ist das aber alles wurst.

Was ich für mich brauche, kann ich sowieso in C errrechnen.

Diese 3D-CAD mache ich nur zum Spaß, bzw., weil sie ja auch Vorteile hat, nämlich die Visualisierung.

ALso:

Denk mal drüber nach, was ein Faktor von 2000 ausmacht. Ich hab das nicht ausgerechnet, um dich zu ärgern. Sondern weil es Tatsache ist, daß das Programm nicht rechnen kann.

WIe immer nach dem Motto: nur nicht persönlich nehmen. wink.gif

Gruß Sharky

Der Beitrag wurde von sharky bearbeitet: 12.09.2010, 19:41 Uhr


--------------------
A programmer is just a tool which converts caffeine into code
TOP    
Beitrag 12.09.2010, 19:48 Uhr
DerDenDuNichtKen...
Level 7 = Community-Professor
*******

QUOTE (sharky @ 12.09.2010, 20:35 Uhr) *
Mal zur Klarstellung:

Ich bin Hobby-Anwender.

Ich habe allerdings eine Programmierer-Historie (Hobby), die bis in die 80er Jahre zurückgeht.

Und ich habe eine Woche mit ALibre gearbeitet.

Dabei ist mir SOFORT aufgefallen, daß da Probleme mit der Rechengeschwindigkeit bestehen.

Das Programm rechnet nicht, sondern das ist eine alte Frau am Krückstock, sage ich mal mit 20 oder mehr Jahren GEfühl im Bauch für Programmierung.

Nun war ich so freundlich, darauf hinzuweisen, daß man dasselbe, was Alibre berechnet, 2000mal schneller berechnen kann.

Der Faktor 2000 ist nicht 5,6,8 oder 64.

Du verstehst den Unterschied zwischen 1 und 2000?

Und jetzt machst du mir noch Vorwürfe deswegen!

Deine Kollegen von der CAD-Programmierabteilung sollten statt dessen mal lieber überlegen, wie sie so eine lahme 3DCAD-Henne dazu bringen, daß die ein wenig rechnet. Ich denke mal, die anderen Programme sind genauso lahm.

Mir ist das aber alles wurst.

Was ich für mich brauche, kann ich sowieso in C errrechnen.

Diese 3D-CAD mache ich nur zum Spaß, bzw., weil sie ja auch Vorteile hat, nämlich die Visualisierung.

ALso:

Denk mal drüber nach, was ein Faktor von 2000 ausmacht. Ich hab das nicht ausgerechnet, um dich zu ärgern. Sondern weil es Tatsache ist, daß das Programm nicht rechnen kann.

WIe immer nach dem Motto: nur nicht persönlich nehmen. wink.gif

Gruß Sharky


Tja und da beist sich der Hund selber in den Schwanz. . . .
Von der einfachen Berechnung der Koordinaten zum Flächen und Volumenmodell, ist schon ein gewaltiger Unterschied.
Wenn Du es schaffts beide Berechnungen unter der gleichen Voraussetzung rechnen zu lassen, dann hättest Du einen Vergleich, bzw richtigen Benchmark.
Aber wie gesagt Dein Faktor ist so halt nicht richtig und daher völlig uninteressant. . .
Aber ich bewundere Deinen Antrieb in solchen dingen hier mal den "HUT abnehm"

Also weiter viel Spaß beim ""Benchmarken""

Gruß Christian


--------------------
Der Vorteil der Klugheit besteht darin, daß man sich dumm stellen kann.
Das Gegenteil ist schon schwieriger.
Kurt Tucholsky


GRUß

Christian Maier
TOP    
Beitrag 12.09.2010, 19:50 Uhr
Yeah!
Level 3 = Community-Techniker
***

Wenn C als Programmiersprache für ein CAD geeignet wäre, dann würden 100% der heutigen CADs auf C aufsetzen.
Bis jetzt kann ich bei dir keine grafische Oberfläche sehen,kein GUI...
Auch die Annahme, daß es oft vorkommt, 100000 oder Milliarden Musterungen zu berechnen, ist praxisfern.
Mich würde aber interessieren, wie du in C den Bewegungsablauf mehrerer verknüpfter Solids in Echtzeit und 3D grafisch darstellst, oder wie du den NC-Weg eines Programms über eine Freiformfläche simulierst, oder die Fließbedingungen von Kunststoff in einer Form nachstellst, in Echtzeit mit grafischer Anzeige oder wie du FEM-Berechnungen anstellst und das darstellst. Sind alles nur Koordinaten, aber ich kann mich erinnern daß du mal ein 3D-Cad oder so alleine programmieren wolltest, und das ist ja auch schon Geschichte.
Ich mache mir über den Speed eines CADs nullkommanull Gedanken, ich benutze es einfach. Gelegentlich schauen ich mir andere CADs an und stelle dabei fest, die kochen alle mit Wasser.
Ich würde Dir empfehlen, dir mal Mastercam anzuschauen, und zwar die Version 9. Da kannst du nämlich eigene C-Programme einbinden (CHooks), dann müsste es dir möglich sein das beste aus deiner Prorammierwelt mit einem gängigen CAD-CAM zu koppeln. DAS könnte evtl. ein Knaller werden, deine C-Basteleien alleine überzeugen mich nicht.


--------------------
Mit freundlichen Grüssen aus Nürnberg,
Thomas
TOP    
Beitrag 12.09.2010, 19:58 Uhr
gekufi
Level 7 = Community-Professor
*******

Hallo

Dass Du hier deine Sachen im Hobbybereich machst bestreitet ja auch keiner.
Nur jetzt Vergleichst Du endgültig, was nicht vergleichbar ist. Du sagst dass dein CAD (Alibre) langsam ist. Lässt ein anderes Programm rechnen, was zwar schneller ist, aber schon im Grundsinn völlig anderes macht als ein CAD. Was Du auch selbst in einem deiner letzten Postings erkannt hast:
QUOTE
Ich berechne Koordinaten.

Ich programmiere keine CAD, sondern ich rechne Koordinaten

Und damit bist Du weit weg von den Aufgaben eines CAD-Systems, was DerDenDuNichtKennst schon gesagt hat. Oder wo sind die von Alibre berechneten Flächen und deren Korrekte Trimmung zueinander?

Du agierst mit deinen Berechnungen und der anschließenden Datenübergabe an eine Steuerung (hier MACH3) eigentlich im Bereich CAM. Und auch da passt wieder gar nichts. Keinen Kollisionsbetrachtungen, man kann nicht zwischen Eilgang und Vorschub unterscheiden (visuelle Kontrolle!), keine Eingabe der Rauhtiefe möglich, keine Offsets, keine max. Weglänge von Punkt zu Punkt....
Einen Vorschub bekommt man auch nicht mit ausgegeben, Freiformflächen wirst Du so auch nicht als Fräsbahnen ausgeben lassen können. Und ja, mein Vergleich passt wirklich, denn auch ein CAM gibt wie dein C-Code im Prinzip "nur" Koordinaten aus. Aber eben so dass man erstens etwas erkennt, ein Teil der möglichen Fehler vom System abgefangen werden und auch der Rest noch mit rauskommt, was reine Koordinaten zu einem Programm für einen Steuerung macht.
Und das abfangen möglicher Fehler braucht sowohl im CAM wie auch schon im CAD mehr Rechenzeit als das bloße berechnen einfacher Schnittpunkte/Koordinaten. Wo sind in deinem Programm die Rückberechnungen zum Abfangen evtl. Berechnungsfehler z.B. aufgrund fehlerhafter Flächen oder Solids??

Gruß Gerd

Der Beitrag wurde von gekufi bearbeitet: 12.09.2010, 20:00 Uhr


--------------------
Wer das Konzept der Unendlichkeit verstehen will, muss nur das Ausmaß menschlicher Dummheit betrachten.
Voltaire
TOP    
Beitrag 12.09.2010, 20:02 Uhr
sharky2014
Level 7 = Community-Professor
*******

QUOTE (Yeah! @ 12.09.2010, 20:50 Uhr) *
Wenn C als Programmiersprache für ein CAD geeignet wäre, dann würden 100% der heutigen CADs auf C aufsetzen.
Bis jetzt kann ich bei dir keine grafische Oberfläche sehen,kein GUI...


Ich habe mich noch nicht in die Windows-Programmierung eingewurstelt.

Deshalb habe ich kein GUI und benutze zur Visualisierung Mach3.

Würde ich mich in Windows-Programmierung einwursteln, könnte ich direkt visuell über DirectX kommunizieren. Schöne Vorstellung. Ob ich mir das aber jemals antue, mich da einzuwursteln, wer weiß.

Du siehst den Beitrag hier falsch. Du denkst, ich will hier falsche Vergleiche ziehen.

Das will ich gar nicht.

Ich weise nur darauf hin, daß bzgl. der REchenleistung dieses 3DCAD ein PRoblem besteht.

Hätte ich das einfach so hingeschrieben, würde mir das ja keiner glauben.

Daher hab ich aus Spaß mal eine Standard.-Situation nachprogrammiert, um der Aussage, daß es ein Problem mit der Rechenleistung gibt, einige Glaubwürdigkeit zu verleihen.

Im übrigen ist dir der Witz von der Sache völlig entgangen, daß ich den Speed-Vorteil daraus beziehe, daß ich 90 Prozent von der Geometrie OHNE TRIGONOMETRISCHE FUNKTIONEN berechne, von daher kommt das ja, der speed. Du bist aber wahrscheinlich kein Programmierer und verstehst diesbezüglich ohnehin nur Bahnhof.

Ich sehe da Nachbesserungs-Bedarf bei derartigen Programmen. Die müssen besser rechnen lernen.

Der Kunde hat seine Zeit ja auch nicht gestohlen.

Was man in 2 Minuten berechnen kann, soll man nicht in 10 Stunden berechnen (milde gesagt).

computare (lat.)= rechnen.


Gruß Sharky

Der Beitrag wurde von sharky bearbeitet: 12.09.2010, 20:14 Uhr


--------------------
A programmer is just a tool which converts caffeine into code
TOP    
Beitrag 12.09.2010, 20:23 Uhr
BomBomMike
Level 3 = Community-Techniker
***

QUOTE
Ich weise nur darauf hin, daß bzgl. der REchenleistung ein PRoblem besteht.
Hätte ich das einfach so hingeschrieben, würde mir das ja keiner glauben.
Daher hab ich aus Spaß mal eine Standard.-Situation nachprogrammiert, um der Aussage, daß es ein Problem mit der Rechenleistung gibt, einige Glaubwürdigkeit zu verleihen.
Vielleicht ein Denkanstoß für CAD Programmierer,


Hm, ich glaube wenn du einfach gesagt hättest das die die Berechnung *beliebigesituationhiereinfügen* langsam vorkommt, würde dich keiner schief anschauen.

Evtl zeigt sich hier auch einfach mal das Alibre günstiger ist als andere Mitbewerber und nicht auf Geschwindigkeit hin optimiert wurde.
Das der CAD Kern für die Berechnungen als Datenbank implementiert wurde glaubst du ja wohl selber nicht. Der wird genauso wie ein Großteil der anderen Programme in C oder einer anderen Hochsprache geschrieben und dann durch den Compiler in Maschinencode übersetzt. Nur berechnet das CAD wohl mehr als nur die simplen Koordinaten. Was genau verschließt sich uns, da wir den Quellcode nicht vor uns liegen haben.

Was auch noch möglich ist, wäre das deine Konstruktionsmethode für die gestellte Aufgabe im Alibre die falsche Methode war und dadurch so lange brauchte. Das kann uns aber nur jemand sagen der im Alibre fit ist.

In diesem Sinne einen schönen Start in die Woche.
Grüße, Mike
TOP    
Beitrag 12.09.2010, 20:27 Uhr
sharky2014
Level 7 = Community-Professor
*******

QUOTE (gekufi @ 12.09.2010, 20:58 Uhr) *
Hallo

Dass Du hier deine Sachen im Hobbybereich machst bestreitet ja auch keiner.
Nur jetzt Vergleichst Du endgültig, was nicht vergleichbar ist. Du sagst dass dein CAD (Alibre) langsam ist. Lässt ein anderes Programm rechnen, was zwar schneller ist, aber schon im Grundsinn völlig anderes macht als ein CAD. Was Du auch selbst in einem deiner letzten Postings erkannt hast:

Und damit bist Du weit weg von den Aufgaben eines CAD-Systems, was DerDenDuNichtKennst schon gesagt hat. Oder wo sind die von Alibre berechneten Flächen und deren Korrekte Trimmung zueinander?

Du agierst mit deinen Berechnungen und der anschließenden Datenübergabe an eine Steuerung (hier MACH3) eigentlich im Bereich CAM. Und auch da passt wieder gar nichts. Keinen Kollisionsbetrachtungen, man kann nicht zwischen Eilgang und Vorschub unterscheiden (visuelle Kontrolle!), keine Eingabe der Rauhtiefe möglich, keine Offsets, keine max. Weglänge von Punkt zu Punkt....
Einen Vorschub bekommt man auch nicht mit ausgegeben, Freiformflächen wirst Du so auch nicht als Fräsbahnen ausgeben lassen können. Und ja, mein Vergleich passt wirklich, denn auch ein CAM gibt wie dein C-Code im Prinzip "nur" Koordinaten aus. Aber eben so dass man erstens etwas erkennt, ein Teil der möglichen Fehler vom System abgefangen werden und auch der Rest noch mit rauskommt, was reine Koordinaten zu einem Programm für einen Steuerung macht.
Und das abfangen möglicher Fehler braucht sowohl im CAM wie auch schon im CAD mehr Rechenzeit als das bloße berechnen einfacher Schnittpunkte/Koordinaten. Wo sind in deinem Programm die Rückberechnungen zum Abfangen evtl. Berechnungsfehler z.B. aufgrund fehlerhafter Flächen oder Solids??

Gruß Gerd



Hast du dich mal mit den Grundlagen der Programmierung beschäftigt?

Jede Funktion innerhalb des Programms hat ihre Aufgabe.

Eine Funktion, welche die Koordinaten berechnet, soll diese Aufgabe SO SCHNELL WIE MÖGLICH ERLEDIGEN, egal, was hinterher mit den Koordinaten geschieht.

Wenn die Funktion das schafft, 2000mal schneller zu sein als vergleichbare Programme, ist doch nichts dagegen einzuwenden, oder?

Guter Programmierstil ist es eben, die Aufgaben nicht ALLE AUF EINEN HAUFEN zu legen, sondern dezidiert zu trennen.

Dazu gibt es eben Funktionen, Spezialisten sozusagen.

Sind die Koordinaten erstmal da, können sie von anderen Funktionen bearbeitet und modelliert werden.

Aber auch da gilt:

wenn wir rechnen, wollen wir SO SCHNELL WIE MÖGLICH rechnen,

man kann sich dazu nicht auf eine fette Datenbank aufsetzen, damit man nichts selbst programmieren muß, sondern Datenbank-Befehle benutzt, wenn man zeitkritische Prozesse hat, soll man originär programmieren.

SO programmiert man.

Der Vorwurf, daß in EINER FUNKTION nicht alles auf einmal erledigt ist, ist keiner. Ganz im Gegenteil: wenn eine Funktion so programmiert ist, ist sie ganz schlecht programmiert.

Warum man was dagegen einzuwenden hat, daß ich die Koordinaten im Vergleich zu Alibre 2000mal schneller errechne, hab ich bis jetzt nicht wirklich verstanden. wink.gif




Gruß Sharky

Der Beitrag wurde von sharky bearbeitet: 12.09.2010, 20:31 Uhr


--------------------
A programmer is just a tool which converts caffeine into code
TOP    
Beitrag 12.09.2010, 20:28 Uhr
DerDenDuNichtKen...
Level 7 = Community-Professor
*******

QUOTE (sharky @ 12.09.2010, 21:02 Uhr) *
Das ist aber noch sehr wohlwollend gerechent. Nehmen wir mal die max. Bildschirmauflösung von 72 dpi (dots per inch), kommen wir auf ca. 3 Punkte pro lfd. mm, also auf einen Linienabstand von nicht 0.1, sondern 0.3.

Dann wäre die Rechenleistung nicht um den Faktor 1000, sondern um den Faktor 3000 schlechter als ein C-Compiler so herangeht.

Kann mir mal jemand erklären, was und wie so eine 3DCAD rechnet?

Sitzt da einer mit dem Taschenrechner auf der Platine und tippt die Koordinaten mit der Hand ein? wink.gif

Mein Verdacht ist, das ist gar nicht originär programmiert, sondern sitzt auf einer Datenbank_Tertiärsprache auf.

Anders läßt sich so ein krasser "Lahmarschigkeitsbonus" eigentlich nicht erklären.

Gruß Sharky

Man erklärt Dir, was da im Hintergrund alles nebenbei berechnet werden muss und Du bist wieder nicht aufnahmebereit....

""Ich weise nur darauf hin, daß bzgl. der REchenleistung dieses 3DCAD ein PRoblem besteht.""
Es besteht eben kein Rechenproblem weil es keinen wesentlichen Vergleich von Deiner Programierung zum Alibre gibt. . . .
Aber mir ist es ja egal denn solange die ganzen Großkonzerne auch mit larmarschiger Software arbiten muss ich auch nicht schneller sein biggrin.gif

Gruß Chriatian


--------------------
Der Vorteil der Klugheit besteht darin, daß man sich dumm stellen kann.
Das Gegenteil ist schon schwieriger.
Kurt Tucholsky


GRUß

Christian Maier
TOP    
Beitrag 12.09.2010, 20:29 Uhr
gekufi
Level 7 = Community-Professor
*******

Hallo

QUOTE
Ich weise nur darauf hin, daß bzgl. der REchenleistung ein PRoblem besteht.

Besteht eben nicht, da Du vieles von dem was ein CAD mitberechnen muss einfach weglässt oder besser gesagt Du etwas völlig anderes berechnest als ein CAD-System. Wen Du dies mitberechnen lassen würdest, währe dein Programm in einem ungefähr vergleichbaren Zeitrahmen wie andere CAD-Systeme auch.
Der einzige Fehler bei den Zeiten ist mal sehr vereinfacht gesagt, das Du es dir mit deinen Gedanken zu diesem Thema zu einfach machst und anschließend völlig verschiedenen Berechnungen miteinander vergleichst -> Solid- und Flächenberechnungen gegen einfache Koordinatenberechnungen.

Und ich hatte es schon mal gesagt, die Programmierer der Systeme tun viel, um bei Berechnungen Zeit einzusparen wo es geht, einfach weil dies heute schon ein wichtiger Verkaufsgrund ist. Je schneller neue Produkte entwickelt und gefertigt werden müssen bei immer höheren Anforderungen tritt der Anschaffungspreis für ein CAD-CAM-System immer mehr in den Hintergrund und die zeitlichen Kosten (Berechnungszeiten) immer mehr in den Vordergrund. Da aber wie gesagt die Anforderungen steigen, werden die Systeme nur minimal schneller, da gleichzeitig wegen immer höherer Genauigkeiten und größerer Datenmengen die Berechnungszeiten auch wieder ansteigen.

Hier gab es irgendwo in den Foren auch mal ein Vergleichsthema zu CAM-Systemen, wo Genauigkeiten und teilweise auch die dazugehörigen Berechnungszeiten verglichen wurden. Der Datensatz und die Berechnungsbedingungen (Berechnungsziele wie Genauigkeit) wurden vorgegeben, um eine Vergleichbarkeit zu erreichen.

Gruß Gerd


--------------------
Wer das Konzept der Unendlichkeit verstehen will, muss nur das Ausmaß menschlicher Dummheit betrachten.
Voltaire
TOP    
Beitrag 12.09.2010, 20:36 Uhr
sharky2014
Level 7 = Community-Professor
*******

QUOTE (gekufi @ 12.09.2010, 21:29 Uhr) *
Hallo


Besteht eben nicht, da Du vieles von dem was ein CAD mitberechnen muss einfach weglässt oder besser gesagt Du etwas völlig anderes berechnest als ein CAD-System. Wen Du dies mitberechnen lassen würdest, währe dein Programm in einem ungefähr vergleichbaren Zeitrahmen wie andere CAD-Systeme auch.
Der einzige Fehler bei den Zeiten ist mal sehr vereinfacht gesagt, das Du es dir mit deinen Gedanken zu diesem Thema zu einfach machst und anschließend völlig verschiedenen Berechnungen miteinander vergleichst -> Solid- und Flächenberechnungen gegen einfache Koordinatenberechnungen.

Und ich hatte es schon mal gesagt, die Programmierer der Systeme tun viel, um bei Berechnungen Zeit einzusparen wo es geht, einfach weil dies heute schon ein wichtiger Verkaufsgrund ist. Je schneller neue Produkte entwickelt und gefertigt werden müssen bei immer höheren Anforderungen tritt der Anschaffungspreis für ein CAD-CAM-System immer mehr in den Hintergrund und die zeitlichen Kosten (Berechnungszeiten) immer mehr in den Vordergrund. Da aber wie gesagt die Anforderungen steigen, werden die Systeme nur minimal schneller, da gleichzeitig wegen immer höherer Genauigkeiten und größerer Datenmengen die Berechnungszeiten auch wieder ansteigen.

Hier gab es irgendwo in den Foren auch mal ein Vergleichsthema zu CAM-Systemen, wo Genauigkeiten und teilweise auch die dazugehörigen Berechnungszeiten verglichen wurden. Der Datensatz und die Berechnungsbedingungen (Berechnungsziele wie Genauigkeit) wurden vorgegeben, um eine Vergleichbarkeit zu erreichen.

Gruß Gerd



Ich weise auf diesen Beitrag hin, den du wohl überlesen hast.

Geht ja jetzt hier schneller als man lesen kann.

Du schmeißt alles durcheinander. Nämlich Strategie und Konzept einer PRogrammierung und die taktischen Anforderungen an die aufzurufenden Funktionen.

Alles durcheinandergworfen, ergibt keinen klaren Gedankengang.

Ich sage: eine Funktion, die rechnen soll, soll rechnen. Und ZWAR SO SCHNELL WIE MÖGLICH. Und NICHTS ANDERES SOLL SIE MACHEN AUSSER RECHNEN.

So sieht eine Programmierung aus: wir haben Funktionen, darunter sind Rechenknechte und weiterbearbeitende. Aber NIEMALS soll eine FUnktion alles machen. Das ist schlechte Programmierung.

Also nochmal dieser Beitrag, der offenbar überlesen wurde:



Hast du dich mal mit den Grundlagen der Programmierung beschäftigt?

Jede Funktion innerhalb des Programms hat ihre Aufgabe.

Eine Funktion, welche die Koordinaten berechnet, soll diese Aufgabe SO SCHNELL WIE MÖGLICH ERLEDIGEN, egal, was hinterher mit den Koordinaten geschieht.

Wenn die Funktion das schafft, 2000mal schneller zu sein als vergleichbare Programme, ist doch nichts dagegen einzuwenden, oder?

Guter Programmierstil ist es eben, die Aufgaben nicht ALLE AUF EINEN HAUFEN zu legen, sondern dezidiert zu trennen.

Dazu gibt es eben Funktionen, Spezialisten sozusagen.

Sind die Koordinaten erstmal da, können sie von anderen Funktionen bearbeitet und modelliert werden.

Aber auch da gilt:

wenn wir rechnen, wollen wir SO SCHNELL WIE MÖGLICH rechnen,

man kann sich dazu nicht auf eine fette Datenbank aufsetzen, damit man nichts selbst programmieren muß, sondern Datenbank-Befehle benutzt, wenn man zeitkritische Prozesse hat, soll man originär programmieren.

SO programmiert man.

Der Vorwurf, daß in EINER FUNKTION nicht alles auf einmal erledigt ist, ist keiner. Ganz im Gegenteil: wenn eine Funktion so programmiert ist, ist sie ganz schlecht programmiert.

Warum man was dagegen einzuwenden hat, daß ich die Koordinaten im Vergleich zu Alibre 2000mal schneller errechne, hab ich bis jetzt nicht wirklich verstanden. wink.gif




Gruß Sharky

Der Beitrag wurde von sharky bearbeitet: 12.09.2010, 20:39 Uhr


--------------------
A programmer is just a tool which converts caffeine into code
TOP    
Beitrag 12.09.2010, 20:46 Uhr
BomBomMike
Level 3 = Community-Techniker
***

sharky, du hast recht das eine Funktion/Programmabschnitt so schnell und effizient rechnen soll wie nur möglich.
Nur wie willst du das messen? Mit deiner "Messung" im Alibre hast du ja nicht nur die Berechnung an sich, sonder auch noch einen ganzen Ratenschwanz hinten dran. Der ist kein Balast sonder nützlich und notwendig.
Auf der anderen Seite hast du dein C-Programm, was ohne dem ganzen arbeitet.
Diese zwei Dinge vergleichst du. Und das ist der Punkt der wohl jedem andern Poster hier aufstößt.

Grüße, Mike
TOP    
Beitrag 12.09.2010, 20:47 Uhr
sharky2014
Level 7 = Community-Professor
*******

Und ich weise nochmals darauf hin, da das hier offenbar von allen überlesen bzw. von niemandem verstanden wurde:

Der Vorteil meiner PRogrammierung liegt nicht darin, daß es in C ist.

Man könnte das genausogut in Delphi oder sonstwas programmieren.

Der Geschwindigkeitsvorteil von 2000:1 gegenüber Alibre resultiert im wesentlichen aus der Tatsache,

daß ich eine 3-D Programmierung zu 90 Prozent OHNE TRIGONOMETRISCHE FUNKTIONEN programmiert habe.

Damit sind die ZEITKRITISCHEN Funktionen zu 90 Prozent rausgeworfen, ergebnis, daß die Software auf sich selbst bezogen um ca. den Faktor 40 schneller rechnet als ohne.

Bzw. 2000mal schneller als Alibre.

Das ist intelligente Programmierung, und das ist die Aussage.

Jetzt werde ich noch dafür gescholten, daß ich schnelle Programmierung mache, weil schnelle Programmierung nicht gleichbedeutend ist mit Rücksitze vom Auto mit Leder beziehen.

Nee, das macht der Sattler.

Meine Funktionen machen nur eins: schnell rechnen.

Was man hinterher mit den Daten macht, das andere Baustelle.

Gruß Sharky

Der Beitrag wurde von sharky bearbeitet: 12.09.2010, 20:49 Uhr


--------------------
A programmer is just a tool which converts caffeine into code
TOP    
Beitrag 12.09.2010, 20:48 Uhr
gekufi
Level 7 = Community-Professor
*******

Hallo

Ja, bei vielen Postings eng hintereinander kann der Zusammenhang schon mal schwierig werden.
Aber um auf deinen letzten auch zu antworten:

QUOTE
Eine Funktion, welche die Koordinaten berechnet, soll diese Aufgabe SO SCHNELL WIE MÖGLICH ERLEDIGEN, egal, was hinterher mit den Koordinaten geschieht.

QUOTE
Wenn die Funktion das schafft, 2000mal schneller zu sein als vergleichbare Programme, ist doch nichts dagegen einzuwenden, oder?

Also dass eine Funktion soll schnell sein soll sehe ich auch ein, aber dann eine Funktion zur Berechnung von einfachen Punkten mit vielen Funktionen (zusammengefasst zu einem Programm!) zur Berechnungen von komplexen Flächenberechnungen zu vergleichen geht dann ja schon mal gar nicht mehr.

Einzelne Funktionen sind auch in einem CAD-CAM-System schnell.
ABER
In einem CAD-CAM-System sind einzelne Funktionen nicht mehr getrennt, weil man mit solchen einzelnen Funktionen vereinfacht gesagt nichts anfangen kann. Was nützen einfache und zusammenhanglose Punkt in einem CAD, wo ich Solids oder Flächen brauche, welche passend zueinander berechnet und auch angezeigt werden (und selbst dass ist noch vereinfacht)??

Gruß Gerd


--------------------
Wer das Konzept der Unendlichkeit verstehen will, muss nur das Ausmaß menschlicher Dummheit betrachten.
Voltaire
TOP    
Beitrag 12.09.2010, 20:56 Uhr
sharky2014
Level 7 = Community-Professor
*******

QUOTE (gekufi @ 12.09.2010, 21:48 Uhr) *
Hallo

Ja, bei vielen Postings eng hintereinander kann der Zusammenhang schon mal schwierig werden.
Aber um auf deinen letzten auch zu antworten:



Also dass eine Funktion soll schnell sein soll sehe ich auch ein, aber dann eine Funktion zur Berechnung von einfachen Punkten mit vielen Funktionen (zusammengefasst zu einem Programm!) zur Berechnungen von komplexen Flächenberechnungen zu vergleichen geht dann ja schon mal gar nicht mehr.

Einzelne Funktionen sind auch in einem CAD-CAM-System schnell.
ABER
In einem CAD-CAM-System sind einzelne Funktionen nicht mehr getrennt, weil man mit solchen einzelnen Funktionen vereinfacht gesagt nichts anfangen kann. Was nützen einfache und zusammenhanglose Punkt in einem CAD, wo ich Solids oder Flächen brauche, welche passend zueinander berechnet und auch angezeigt werden (und selbst dass ist noch vereinfacht)??

Gruß Gerd


Aus deiner Art zu antworten bemerke ich, du bist kein Programmierer, sondern Anwender von Programmierungen.

Das ist eine andere Blickrichtung.

Ich kann dazu nur sagen:

Programmierung soll so sein, daß der Anwender gar ncht merkt, was da passiert. Sondern der soll sein Ding machen.

Intern allerdings ist Programmierung so strukturiert, ohne daß der Anwender davon was merkt, daß jede Funktion nur das macht, was sie am besten kann.

Man legt niemals irgendwelche Aufgaben zusammen.

Und was du nicht verstehst:

WENN man SCHNELL rechnen muß, ist SCHNELLES RECHNEN die Vorgabe und SONST NICHTS.

Was danach mit den Daten passiert, regelt das Programm, nicht der Anwender.

Steill dir mal meine PRogrammierung als ein unsichtbares Teil von einem Anwender-Programm vor.

Du siehst auf dem Bildschirm, daß die Daten 1000mal schneller entstehen als mit deiner alten Software.

Wenn du das realisierst, dann hast du den Grundgedanken verstanden.

Es ist hier nur ein Baustein beschrieben, kein Programm. Und dieser Baustein soll das letzte herausholen, was irgendwie geht.

So schnell wie möglich eben. wink.gif

Gruß Sharky

Der Beitrag wurde von sharky bearbeitet: 12.09.2010, 21:03 Uhr


--------------------
A programmer is just a tool which converts caffeine into code
TOP    
Beitrag 12.09.2010, 20:58 Uhr
Yeah!
Level 3 = Community-Techniker
***

Tschuldigung, daß mir deine C-Weihen nicht zuteil wurden und ich deiner Ansicht nach nur Bahnhof verstehe... aber das sagt mir jemand, der in Alibre trotz online-Hilfe und Foren keine geschwenkte Ebene zustande bringt.
Wir sind in einem CAD-Subforum und das Thema ist Alibre und nicht C.

Wenn ich in C Vorteile sehen würde, würde ich mich drum kümmern.
In der Zeit, die du hier heute verplempert hast, habe ich ein ganzes Werkzeug mit Alibre konstruiert, und ich bin sicher, daß der Anteil der Sprache C dabei bei gefühlt 0% liegt.


--------------------
Mit freundlichen Grüssen aus Nürnberg,
Thomas
TOP    
Beitrag 12.09.2010, 21:00 Uhr
sharky2014
Level 7 = Community-Professor
*******

QUOTE (Yeah! @ 12.09.2010, 21:58 Uhr) *
Wenn ich in C Vorteile sehen würde, würde ich mich drum kümmern.


Du bist das, was man eine Zicke nennt. ;)

Gruß Sharky


--------------------
A programmer is just a tool which converts caffeine into code
TOP    
Beitrag 12.09.2010, 21:06 Uhr
Yeah!
Level 3 = Community-Techniker
***

Ferner siehst du bei Alibre, wie bei allen CADs auch, nichts von der Berechnung, nicht mal den Teil, den du so gern optimierst. Falls das möglich wäre würde ich wetten daß kein CAD in exakt dieser Routine lahmer ist als dein C und dein Faktor würde gen 1:1 schrumpfen ( im besten Fall)


--------------------
Mit freundlichen Grüssen aus Nürnberg,
Thomas
TOP    
Beitrag 12.09.2010, 21:09 Uhr
sharky2014
Level 7 = Community-Professor
*******

QUOTE (Yeah! @ 12.09.2010, 22:06 Uhr) *
Ferner siehst du bei Alibre, wie bei allen CADs auch, nichts von der Berechnung, nicht mal den Teil, den du so gern optimierst. Falls das möglich wäre würde ich wetten daß kein CAD in exakt dieser Routine lahmer ist als dein C und dein Faktor würde gen 1:1 schrumpfen ( im besten Fall)


Nun der Faktor ist 2000:1.

Aber macht ja nix.

Bei dir ist 2000:1 ca. 1:1.

Und die Erde ist eine Scheibe, alles klar. ;)

Gruß Sharky


--------------------
A programmer is just a tool which converts caffeine into code
TOP    
Beitrag 12.09.2010, 21:11 Uhr
gekufi
Level 7 = Community-Professor
*******

Hallo

Ja ich bin ein Anwender und einen schnelle Berechnung zusammenhangloser Punkte geht mir wo vorbei. Ich will das Daten fehlerfrei umgesetzt werden, das der Kunde, meine Kollegen und ich die Daten visuell sehen und keine Punkte. Ich will das Teil wie es fertig aussehen soll am Bildschirm von allen Seiten betrachten können um evtl. Probleme z.B. bei der nachfolgenden Fertigung ausschließen zu können -> Arbeitsvorbereitung!
Ich will ein lauffähiges Programm und keine Punkte irgendwo im Universum. Ich will saubere Fräsbahnen und keinen Eilgang quer durchs Werkstück. Und dafür interessieren mich und auch viele andere hier einzelne Schritte bei den dafür nötigen Berechnungen einen sch.... (das Wort kann sich wohl jeder denken)

Wir brauchen das Endergebnis und eine einzelne Funktion wird dabei bedeutungslos. Um das endgültige Ziel zu ereichen braucht es viele Funktionen, welchen von den CAD-CAM-Systemen zusammengefasst werden.

Und jetzt kommst Du daher und vergleichst einen einzelnen Schritt mit einem kompletten Marathon....
Ist ja klar, das ein einzelnen Schritt schneller gemacht ist, aber im Ziel ist man dann auch nicht.

Oder warum vergleichst Du ein komplexes Endergebnis mit einer Abfolge von vielen dafür nötigen Berechnungen mit einem einzelnen Schritt, wobei Du alles andere weglässt?
Nur um sagen zu können das dein einzelner Schritt schneller gemacht ist als ein kompletter Marathon gelaufen?

Gruß Gerd


--------------------
Wer das Konzept der Unendlichkeit verstehen will, muss nur das Ausmaß menschlicher Dummheit betrachten.
Voltaire
TOP    
Beitrag 12.09.2010, 21:37 Uhr
DerDenDuNichtKen...
Level 7 = Community-Professor
*******

QUOTE (gekufi @ 12.09.2010, 22:11 Uhr) *
Hallo

Ja ich bin ein Anwender und einen schnelle Berechnung zusammenhangloser Punkte geht mir wo vorbei. Ich will das Daten fehlerfrei umgesetzt werden, das der Kunde, meine Kollegen und ich die Daten visuell sehen und keine Punkte. Ich will das Teil wie es fertig aussehen soll am Bildschirm von allen Seiten betrachten können um evtl. Probleme z.B. bei der nachfolgenden Fertigung ausschließen zu können -> Arbeitsvorbereitung!
Ich will ein lauffähiges Programm und keine Punkte irgendwo im Universum. Ich will saubere Fräsbahnen und keinen Eilgang quer durchs Werkstück. Und dafür interessieren mich und auch viele andere hier einzelne Schritte bei den dafür nötigen Berechnungen einen sch.... (das Wort kann sich wohl jeder denken)

Wir brauchen das Endergebnis und eine einzelne Funktion wird dabei bedeutungslos. Um das endgültige Ziel zu ereichen braucht es viele Funktionen, welchen von den CAD-CAM-Systemen zusammengefasst werden.

Und jetzt kommst Du daher und vergleichst einen einzelnen Schritt mit einem kompletten Marathon....
Ist ja klar, das ein einzelnen Schritt schneller gemacht ist, aber im Ziel ist man dann auch nicht.

Oder warum vergleichst Du ein komplexes Endergebnis mit einer Abfolge von vielen dafür nötigen Berechnungen mit einem einzelnen Schritt, wobei Du alles andere weglässt?
Nur um sagen zu können das dein einzelner Schritt schneller gemacht ist als ein kompletter Marathon gelaufen?

Gruß Gerd


Hallo Gerd,

da kann ich Dir nur recht geben. . . .

@ Sharky. . . das ganze ist doch wie mit Deiner Dentalfräse die Du im my Bereich in den einzelenen Segmenten einstellen willst....
Am Ende zählt, wie Gekufi schrieb das Ergebnis. . . . und mit Deiner Programierweise lieferst Du kein brauchbares Ergebnis für uns Fertiger oder
Konstrukteure. . . .
Liefere doch einfach mit Deiner Programmierung ein visuelles Ergebnis wie Alibre mir der selben Historie dem selben Flächenaufbau (wie schon so oft von mir gesagt trigonomierte Oberfläche richtig getrimmte Flächenabschlüsse und und und)
Wenn Du dann wieder um den Faktor 1000 schneller bist dann erst bin ich von Deiner Rechnung überzeugt. . . .

Gruß Christian


--------------------
Der Vorteil der Klugheit besteht darin, daß man sich dumm stellen kann.
Das Gegenteil ist schon schwieriger.
Kurt Tucholsky


GRUß

Christian Maier
TOP    
Beitrag 13.09.2010, 09:04 Uhr
bullet01
Level 7 = Community-Professor
*******

Hallo,

eine CAD Software ist unter anderem auch mit C programmiert.

Nur so zur Info wink.gif


--------------------
gruß Klaus
TOP    
Beitrag 13.09.2010, 13:30 Uhr
mori4200
Level 4 = Community-Meister
****

All diese CAD/CAM Software Entwickler haben ja keine Ahnung wie man so etwas programmiert.
Die sollten mal zur Schulung bei Sharky antreten damit auch mal was gutes rauskommt.

Ich werde mich fuer den Kurs "wie programmiere ich einen Lochkreis" anmelden!


--------------------
Mfg MORI


“Armselig der Schüler, der seinen Meister nicht übertrifft“
TOP    
Beitrag 13.09.2010, 13:53 Uhr
Yeah!
Level 3 = Community-Techniker
***

Der Kurs "wie schwenke ich eine Bohrung um 5 Grad" ist auch sehr gefragt.


--------------------
Mit freundlichen Grüssen aus Nürnberg,
Thomas
TOP    
Beitrag 13.09.2010, 14:49 Uhr
mori4200
Level 4 = Community-Meister
****

@Yeah!

Eine Bohrung schwenkt man nicht!

Man fixiert das Werkstueck an einem freien Platz in der Halle und montiert eine
Teilscheibe mit 1.509.360 Bohrungen herum auf welcher wiederum die Maschine montiert ist.
Damit sind dann so ziehmlich alle Teilungen moeglich.

Die Maschine wiederum wird ueber einen DC- Servo Motor aus dem jahre Schnee auf der "Saturn-Ring-Teilscheibe" bewegt.
Die Klemmung der Maschine auf dem Ring wird allerdings ganz einfach, und nicht durch hochkomplizierte Bremsen, ueber die
Auflage eines ausranchierten russischen Atom-U-Boots realisiert. Falls das U-Boot allerdings zu traege fuer den Transport ist kann
auch eine Saturn V von der NASA geborgt werden.

Das alles ist immer noch guenstiger und genauer als vorhandene Resurcen zu nutzen.

Diese Maschinenhersteller haben ja auch keine Ahnung von der Materie!

Der Beitrag wurde von mori4200 bearbeitet: 13.09.2010, 14:54 Uhr


--------------------
Mfg MORI


“Armselig der Schüler, der seinen Meister nicht übertrifft“
TOP    
Beitrag 13.09.2010, 15:33 Uhr
mori4200
Level 4 = Community-Meister
****

@Sharky,

warum schreibst du nicht ein Programm um die naechst groessere Primzahl zu berechnen.
Das wuerde der Menscheit wenigsten nutzen!


--------------------
Mfg MORI


“Armselig der Schüler, der seinen Meister nicht übertrifft“
TOP    



2 Besucher lesen dieses Thema (Gäste: 2)
0 Mitglieder: