AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Geometriekollision! Was würdet Ihr mir empfehlen?
Thema durchsuchen
Ansicht
Themen-Optionen

Geometriekollision! Was würdet Ihr mir empfehlen?

Ein Thema von Armageddon · begonnen am 11. Okt 2003 · letzter Beitrag vom 13. Okt 2003
Antwort Antwort
Benutzerbild von Armageddon
Armageddon

Registriert seit: 30. Mär 2003
Ort: Wilflingen
158 Beiträge
 
#1

Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 11. Okt 2003, 11:24
Hallo,

ich möchte gern etwas zusammenbastelproggen.
Und zwar möchte ich etwas schaffen das mir eine Kontur aufzeichnet und dann eine andere Kontur auf den Punkt P1 gebracht wird, und von diesem Punkt aus dann in Richtung Kontur verfährt bis die Werkzeugkontur mit der Teilkontur kollidiert. Wenn es kollidiert soll der Punkt wo sich das Werkzeug befindet ausgegeben werden.

Ich hoffe Jemand versteht was ich meine und kann mir helfen.

Ich hab das mal als .bmp File angehängt zum anschauen. (Meckert nur nicht es ging nicht anders!).

Meine Frage ist nun: Mit was würdet Ihr das realisieren?

Später soll die Kontur dann auch noch um die Längsachse rotiert werden.
Also Quasi als Volumenmodell. Aber das ist erst mal nebensächlich.

mfg. Arma
Angehängte Grafiken
Dateityp: bmp frage.bmp (283,1 KB, 36x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Armageddon
Armageddon

Registriert seit: 30. Mär 2003
Ort: Wilflingen
158 Beiträge
 
#2

Re: Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 11. Okt 2003, 21:12
Hi,

keiner nen Idee für mich? Es muß nicht gleich 3D sein das kommt erst viel später mal. In 2D reicht für den Anfang vollkommen. Könnt ja auf den Canvas zeichen denk ich aber da ist ja nix mit Kollisionskontrolle oder?

Irgend nen Ansatz würde mir schon weiterhelfen.




Gruß Arma.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#3

Re: Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 11. Okt 2003, 22:27
Hi,

du kannst deine Objektkontur in ein BitMap zeichnen und dann an der virtuellen Kontur des Werkzeugs die Farbwerte mit Canvas.Pixels[x, y] abfragen. Wenn du dann das werkzeug Pixelweise verschiebst, bekommst du an hand der Farbwerte mit ob das Werkzeug mit dem Objekt kolidiert.

Kannst das Ganze aber auch mit Hilfe der Mathematik lösen. Wenn mann das Bild so sieht, brauchst dur nur mal an Kreise, Tangenten und so zu denken.

Wenn das in Richtung eines kleinen Fertigungsroboters (Fräser ...) gehen soll. Hab' das auch noch im Hinterkopf, wurde aber auf Grund der Komplexität und zu Gunsten anderer Projekte erst mal eingestellt. Quellcodes, die dir bei der mathematischen Lösung hätten helfen können, sind leider schon gelöscht.
  Mit Zitat antworten Zitat
Benutzerbild von Armageddon
Armageddon

Registriert seit: 30. Mär 2003
Ort: Wilflingen
158 Beiträge
 
#4

Re: Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 12. Okt 2003, 22:28
Hi Himitsu,

erstmal Danke für Deine Antwort. Hört sich vernünftig an. *g*
Wird aber erstmal nix für den Fräsesektor. Ich will den G71 Schruppzyklus einer Fanucsteuerung nachprogrammieren. Zweckswerkzeugweg optimierung und Stückzeitermittlung. Später vielleicht noch alles in 3D.

Soll mal nur ein reiner Simulator werden um die Programme einer STAR-SR20R zu Simulieren und evtl. Fehler zu finden bevor man das Programm in die Maschine sendet. Bzw. auch um die evtl. Stückzeit für Neuteile vorher zu bestimmen bevor sie erstmal auf der Maschine eingestellt werden.

Hab noch viel vor und würde mich über jede Hilfe oder jeden Tip freuen.

Gruß Arma.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#5

Re: Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 13. Okt 2003, 07:05
In dem Fall geht das eh' nur rechnerisch, schon allein wegen der Genauigkeit. Und mit 'ner 2D-Zeichenfläche währst du für 'ne 3D-Figur auch nicht hingekommen.
Kann aber schon mal sagen das es 'ne ziemlich aufwendige Rechnerei wird, schon allein wegen der Komplexität der zu berechnenden Figuren. Und das Werkstück ändert sich dann ja auch noch ständig.
Für einen derartigen Rechenaufwand, währe es vielleicht besser auf eine der höheren Programmiersprachen umzusteigen. Wie z.B. C++ oder besser noch höher - Delphi ist in der Hinsicht ja etwas langsam.

Hatte da mal an einer Arbeitswegoptimierung mit eventueller Ansteuerung für einen kleinen Fräsroboter gearbeitet. Den Robo könnte man sich zum Beispiel so wie die größeren Schweißrobo's in der Autoindustrie vorstellen. Und da sich dieser Aufwand für Kleinserien einfach nicht lohnte, hab ich's halt wieder aufgegeben.
Als kleiner Bastelfreak hätte mich das zwar noch gereizt, aber man muß auch irgendwo seine Prioritäten setzen.

Dennoch viel Glück
Frank
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Wormid
Wormid

Registriert seit: 26. Aug 2003
Ort: Steinfurt
292 Beiträge
 
Delphi XE2 Professional
 
#6

Re: Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 13. Okt 2003, 10:58
Was die Geschwindigkeit von C++ <> Delphi angeht, so verweise ich mal leise hüstelnd auf die Artikelserie "C# im Geschwindigkeitstest" der ct. (19/2003 S.204 und 21/2003 S.222, Teil 3 steht noch aus)... (Artikel nicht online einsehbar, sonst hätte ich sie verlinkt )
In dem Test wird geprüft, wie schnell denn Delphi, C++, C# und Java bei der Lösung der gleichen Probleme sind.
Der ein oder andere C++ -Fetischist oder Java-Hasser wird überrascht sein, würde ich mal zu behaupten wagen .

Gruß

Wormid
Debuggers don't remove Bugs, they only show them in Slow-Motion.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#7

Re: Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 13. Okt 2003, 17:25
Ich lass mich ja gerne eines Besseren belehren, bekomme halt nur von allen Seiten zu hören wie toll C ist. Und da ich beispielsweise nur noch einen anderen Delphi-Programmierer hier in Dresden kenne, der das Ganze noch hobbymäßiger (extrem wenig) als ich macht, hab ich halt daran auch nicht gezweifelt. Das sehr viele Softwarefirmen C und nicht Delphi verlangen muss doch auch noch einen Grund haben?

Damals, als ich mir Delphi 4 (mein Einstieg) kaufen wollte, musste ich erst eine Weile suchen, bis ich einen Laden fand, der mir helfen konnte (Beratung und Beschaffung). Die anderen wollten mich alle, wenn sie überhaupt etwas Ahnung vom Programmieren hatten, in Richtung C++ drängen. Aber nach Basic und Pascal war Delphi (Object Pascal) für mich die einfachere Lösung.
Ich weis ja nicht, ob es noch andere so schwer hatten, aber für mich war es hart und der Spott sehr groß. Kannte mal einige, für die war Delphi keine richtige Programmiersprache.

Und wenn das hier (Delphi besser als C++) auch noch stimmt, ist es doch super, das ich mich damals nicht hab' umstimmen lassen. Werd' mich mal noch etwas informieren und vielleicht hab' ich dann auch mal etwas, um über die C-ler herzuziehen.



Na gut, da ich nebenbei noch ein biss’l mit Mikroprozessoren zu tun hab, wird halt doch etwas Assembler, C++ und CCBasic gebraucht. Und in Delphi kann etwas Assembler ja auch nicht schaden, denn das ist jetzt aber schneller.

Einen Gruß an alle Delphi-Fetischisten
Frank
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Armageddon
Armageddon

Registriert seit: 30. Mär 2003
Ort: Wilflingen
158 Beiträge
 
#8

Re: Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 13. Okt 2003, 17:57
Hi Everybody.

Mir ist schon klar das es eine morts Rechnerei wird, aber nur für den PC nicht für mich *hehe* Der hat ja Zeit. In erster Linie geht es mir erst einmal darum so etwas zu realisieren. Egal wie schön es aussieht oder wie lange es läuft. Hauptsache mal ein Einstieg.

Also ist bis jetzt die einzige Möglichkeit mit dem Bitmap da.
Hmm schade dachte da gibts vielleicht was wo man Linien oder Bögen so lange erweitern kann bis sie eine andere Linie treffen.


Naja muß ich mal gucken.


Gruß Arma.
  Mit Zitat antworten Zitat
Benutzerbild von Wormid
Wormid

Registriert seit: 26. Aug 2003
Ort: Steinfurt
292 Beiträge
 
Delphi XE2 Professional
 
#9

Re: Geometriekollision! Was würdet Ihr mir empfehlen?

  Alt 13. Okt 2003, 17:59
"Delphi ist besser als C++", das kann man so generell nicht sagen. Aber andersrum stimmt die Aussage auch längst nicht immer... C++ ist z.B. scheinbar deutlicj langsamer beim Konstruieren und Erzeugen von Objekten, dafür ist der Compiler besser optimiert und einige Berechnungen und Schleifen rennen da schneller als in Delphi und Co.

Auch Java ist (wenn man von der Ladezeit der VM absieht), längst nicht mehr so lahm wie früher... und C# (leider noch keine Erfahrungen mit gemacht) muss auch wohl recht fix sein.
Aber auf eines weißt der angesprochene Artikel schon hin: Delphi.NET wird richtig rocken!

Gruß

Wormid
Debuggers don't remove Bugs, they only show them in Slow-Motion.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:16 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz