Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  AutoCAD VBA
  Skalierungsproblem

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 Autodesk Produkte
  
NVIDIA GTC Paris und ISC High Performance-Konferenz 2025, eine Pressemitteilung
Autor Thema:  Skalierungsproblem (862 mal gelesen)
0modem
Mitglied
Student

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

Beiträge: 1
Registriert: 15.07.2007

erstellt am: 15. Jul. 2007 00:34    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 möchte ein Objekt (Polyline) skalieren, aber mit unterschiedlichen Werten für x-Achse und y-Achse.
Transformby Rotationsmatrix (non-uniformally error) funktioniert ja leider nicht. (Warum eigentlich?)
Die Lisp-Funktion unter http://www.cadalot.co.uk/acad/down_load/xscale.zip
scheint noch niemand für VBA programmiert zu haben - leider...
Oder kann man die eventuell per SendCommand nutzen?

Und nun zur wahrscheinlich letzten Möglichkeit - Dehnen /Skalieren mittels Blöcken.
XScaleFactor - ist es damit möglich ein Objekt zu skalieren?

Kann mir bitte jemand beispielcode schreiben, denn mit dem unten eigenfügten Code aus der Hilfe komme ich nicht klar. Nach Änderung der Skalierung sieht das Objekt unverändert aus.

Sub Example_XScaleFactor()
    ' This example creates a block containing a circle.
    ' It then inserts the block and changes the XScaleFactor.
   
    ' Create the block
    Dim blockObj As AcadBlock
    Dim insertionPnt(0 To 2) As Double
    insertionPnt(0) = 0#: insertionPnt(1) = 0#: insertionPnt(2) = 0#
    Set blockObj = ThisDrawing.Blocks.Add(insertionPnt, "CircleBlock")
   
    ' Add a circle to the block
    Dim circleObj As AcadCircle
    Dim center(0 To 2) As Double
    Dim radius As Double
    center(0) = 0: center(1) = 0: center(2) = 0
    radius = 1
    Set circleObj = blockObj.AddCircle(center, radius)
 
    ' Insert the block
    Dim blockRefObj As AcadBlockReference
    insertionPnt(0) = 2#: insertionPnt(1) = 2#: insertionPnt(2) = 0
    Set blockRefObj = ThisDrawing.ModelSpace.InsertBlock(insertionPnt, "CircleBlock", 1#, 1#, 1#, 0)
   
    ' Find the current XScaleFactor for the block reference
    Dim currXScaleFactor As Double
    currXScaleFactor = blockRefObj.XScaleFactor
    ZoomAll
    MsgBox "The current XScaleFactor for the block reference is " & blockRefObj.XScaleFactor, , "XScaleFactor Example"
   
    ' Change the XScaleFactor for the block reference
    blockRefObj.XScaleFactor = currXScaleFactor + 2
    ZoomAll
    MsgBox "The new XScaleFactor for the block reference is " & blockRefObj.XScaleFactor, , "XScaleFactor Example"
   
End Sub


Vielen Dank im Vorraus für schnelle Hilfe.

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

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



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

Beiträge: 9807
Registriert: 01.12.2003

AutoCAD 2.5 - 2022, LDD, MDT, RD, ADT, Civil
Inventor AIP 4-11, 2008 -2022
Win 10

erstellt am: 15. Jul. 2007 00:58    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 0modem 10 Unities + Antwort hilfreich

Hallo 0modem,

Willkommen im Forum bei CAD.DE !           
Vier wichtige Links für den problemlosen Einstieg:
Richtig Fragen - Nettiquette - Suchfunktion - System-Info

bei mir (getestet mit AutoCAD 2007) sieht das Ergebnis der Beispielroutine wie erwartet aus: Erst ein Kreis, dann eine Ellipse.

P.S.: Fülle doch bitte deine Sys-info (wie im obigen Link beschrieben) aus, damit man weiß, welche AutoCAD Version du einsetzt.


------------------
Mit freundlichem Gruß

Udo Hübner

[Diese Nachricht wurde von CAD-Huebner am 15. Jul. 2007 editiert.]

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