Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Programmierung
  Punkt Referenzen ohne Erzeugung

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für CATIA & Co.
  
Schnell, effizient und günstig: Mit der Kisters 3DViewStation 3D Arbeits- und Reparaturanleitungen einfach erstellen und pflegen, eine Pressemitteilung
Autor Thema:  Punkt Referenzen ohne Erzeugung (978 mal gelesen)
camahiahua
Mitglied
ingenieur


Sehen Sie sich das Profil von camahiahua an!   Senden Sie eine Private Message an camahiahua  Schreiben Sie einen Gästebucheintrag für camahiahua

Beiträge: 31
Registriert: 28.09.2010

erstellt am: 30. Sep. 2010 08:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

Ich habe folgendes Problem. Ich soll eine Menge Sphären Erzeugen. Ich mache erstmals viele Punkte. Wenn ein Punkt eine bestimmte Entfernung von einem Body hat, mache ich an diesem Punkt eine Kugel.

Ich will meine Berechung schneller machen. kann ich irgendwie eine Referenz von die Koordinaten des Punktes machen ohne die Erzeugung des Punktes?

vielen Dank im voraus

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


Sehen Sie sich das Profil von HoBLila an!   Senden Sie eine Private Message an HoBLila  Schreiben Sie einen Gästebucheintrag für HoBLila

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 01. Okt. 2010 09:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für camahiahua 10 Unities + Antwort hilfreich

Hallo camahiahua,

ich hab die Aufgabenstellung noch nicht so ganz umrissen.
Also wenn ich das richtig verstehe soll einfach nur eine Sphäre, ohne Punkt, erstellt werden.
Soweit ich weiß können doch Sphären einfach an beliebigen Koordinaten erzeugt werden, das wäre doch dann die Lösung, diese Koordinaten, statt eines neu erzeugten Punktes zu übergeben. Aber wie gesagt, hab's sicher nicht verstanden.

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

matzehahn
Mitglied
Student


Sehen Sie sich das Profil von matzehahn an!   Senden Sie eine Private Message an matzehahn  Schreiben Sie einen Gästebucheintrag für matzehahn

Beiträge: 19
Registriert: 11.08.2010

CATIAV5 R19 SP03

erstellt am: 01. Okt. 2010 15:42    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für camahiahua 10 Unities + Antwort hilfreich

Nein, man muss einen Punkt als Referenz erzeugen. Manuell benötigt man auch immer einen Punkt für eine Kugel.

Man kann nur das "HybridBody.AppendHybridShape Punkt" weglassen, dann erscheint der Punkt eben nicht direkt im Baum sonder ist bei der Kugel hinterlegt.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


Sehen Sie sich das Profil von HoBLila an!   Senden Sie eine Private Message an HoBLila  Schreiben Sie einen Gästebucheintrag für HoBLila

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 01. Okt. 2010 15:49    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für camahiahua 10 Unities + Antwort hilfreich

Wahrscheinlich kann man anderen Stellen auch sowieso mehr Performance raus holen.
Beispielweise bei Update.

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

camahiahua
Mitglied
ingenieur


Sehen Sie sich das Profil von camahiahua an!   Senden Sie eine Private Message an camahiahua  Schreiben Sie einen Gästebucheintrag für camahiahua

Beiträge: 31
Registriert: 28.09.2010

erstellt am: 04. Okt. 2010 09:31    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

entschuldigung für die verspätete Antwort. ich nutze folgenden Code.


for z = z_start +Diameter/2 to z_end Step Diameter
for y = y_start +Diameter/2 to y_end Step Diameter
  for x = x_start +Diameter/2 to x_end Step Diameter

'---------------Punkte Erzeugung

    position = position + 1
    Set Points(position) = HybridShapeFactory1.AddNewPointCoord(x,y,z)
    Points(position).RefAxisSystem=Reference_points
    HybridBody4.AppendHybridShape Points(position)
    Points(position).name="Point" & Position
    Part1.Update

    Set Ref1 = part1.CreateReferenceFromObject(Points(Position))
    Set TheMeasurable = TheSPAWorkbench.GetMeasurable(Ref1)

'//////////Den Abstand zwischen Puntk und Body ist berechnet

    MinDist = TheMeasurable.GetMinimumDistance(Ref2)

'///////// wenn der Punkt in der Body ist denn wird in diesem Punkt eine Kugel Erzeugt

    if MinDist = 0 then

'---------------Kugel Erzeugung

    Dim reference_spheres As Reference
    Set reference_spheres = part1.CreateReferenceFromObject(points(position))
    Set Spheres(position) = hybridShapeFactory1.AddNewSphere(reference_spheres,reference_points,
    Diameter/2, -45, 45, 0, 180)
    Spheres(position).Limitation = 1

'---------------Closed Surface

    Dim reference_Closed_Surface As Reference
    Set reference_Closed_Surface = part1.CreateReferenceFromObject(Spheres(position))
    Set closedSurfaces(position) = ShapeFactory1.AddNewVolumeCloseSurface(reference_Closed_Surface)
    Dim reference_sphere As Reference
    Set reference_sphere = part1.CreateReferenceFromObject(Spheres(position))
    closedSurfaces(Position).Surface = reference_sphere
    closedSurfaces(Position).Name= "Sphere" & position
    Part1.update

  End if

  Next
Next
Next


wenn ich die Linie "HybridBody4.AppendHybridShape Points(position)" weglasse, kann ich nicht "The minimum Distance" bekommen.

Was ich will im prinzip ist die Punkte die nicht in der Body sind ("MinimumDistance">0) nicht erzeugen. ist das möglich???

vielen Dank für eure Hilfe

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

HoBLila
Mitglied
Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx


Sehen Sie sich das Profil von HoBLila an!   Senden Sie eine Private Message an HoBLila  Schreiben Sie einen Gästebucheintrag für HoBLila

Beiträge: 1118
Registriert: 29.05.2008

DELL PRECISION T3500
Intel(R) Xeon(R) CPU W3540 @ 2.93GHz
12285 MB RAM
NVIDIA Quadro FX 1800
Microsoft Windows 7 Enterprise Service Pack 1
CATIA V5 R19 SP09 HF69
VB6.5
CAA RADE CDC

erstellt am: 04. Okt. 2010 11:48    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für camahiahua 10 Unities + Antwort hilfreich

Versuch als erstes einmal:

Code:

Part1.Update

gegen

Code:

Part1.UpdateObject(Points(position))


zu ersetzen.

Selbiges natürlich auch für die anderen Updates.

Dann sag mir mal welche Sprache Du verwendest und füll die Sys-Info bitte aus.

Edit:

Code:

    Dim reference_spheres As Reference
    Set reference_spheres = part1.CreateReferenceFromObject(points(position))


kann raus, denn Du hast die Reference schon.

Code:

Set reference_sphere = part1.CreateReferenceFromObject(Spheres(position))


macht gar keinen Sinn.

Noch ein Vorschlag:
mach aus

Code:

Set TheMeasurable = TheSPAWorkbench.GetMeasurable(Ref1)


lieber
Code:

Set TheMeasurable = TheSPAWorkbench.GetMeasurable(Ref2)


und das ganze Außerhalb der Schleifen und dann immer MinDistance zur Ref1, dadurch sparst Du dir das ständige Objekt-Erzeugungsgedöns.

------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila

Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen

Xing

[Diese Nachricht wurde von HoBLila am 04. Okt. 2010 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

camahiahua
Mitglied
ingenieur


Sehen Sie sich das Profil von camahiahua an!   Senden Sie eine Private Message an camahiahua  Schreiben Sie einen Gästebucheintrag für camahiahua

Beiträge: 31
Registriert: 28.09.2010

erstellt am: 04. Okt. 2010 21:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

vielen Dank für die Hilfe.

Es funktioniert super mit dem Befehl:

"Part1.UpdateObject(Points(position))"

Damit brauche Ich keine Punkterzeugung zu machen und es ist jetzt die Berechnungszeit ungefähr 40% weniger.

Muchas Gracias 

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz