Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  AutoCAD ObjectARX und .NET
  Blöcke an Linie verankern

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
Autor Thema:  Blöcke an Linie verankern (1207 mal gelesen)
Boehri
Mitglied



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

Beiträge: 80
Registriert: 07.04.2008

erstellt am: 27. Jan. 2011 11:03    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 zusammen,

gibt es die Möglichkeit mit vb.net in Autocad Blöcke auf Linien oder Polylinien zu verankern? Wenn ich die Linie verschiebe soll sich auch der verankerte Block mit verschieben.

Gruss Boehri

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

Boehri
Mitglied



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

Beiträge: 80
Registriert: 07.04.2008

erstellt am: 27. Jan. 2011 13:12    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,
kleiner Nachtrag.
Ich habe auf [URL=http://through-the-interface.typepad.com/through_the_interface/2008/08/anchoring-autoc.html][/URL]  was gefunden.

Ich habe folgenden Codeausschnitt

Code:
    void doc_CommandWillStart(

      object sender,

      CommandEventArgs e

    )

    {

      if (_commandNames.Contains(e.GlobalCommandName))

      {

        _ids.Clear();

        _pos.Clear();

        _doc.Database.ObjectOpenedForModify +=

          new ObjectEventHandler(_db_ObjectOpenedForModify);

        _doc.CommandCancelled +=

          new CommandEventHandler(_doc_CommandEnded);

        _doc.CommandEnded +=

          new CommandEventHandler(_doc_CommandEnded);

        _doc.CommandFailed +=

          new CommandEventHandler(_doc_CommandEnded);

      }

    }



in VB übesetzt

Code:

        Private Sub doc_CommandWillStart(ByVal sender As Object, ByVal e As CommandEventArgs)

            If _commandNames.Contains(e.GlobalCommandName) Then


                _ids.Clear()

                _pos.Clear()


                AddHandler _doc.Database.ObjectOpenedForModify, AddressOf _db_ObjectOpenedForModify


                AddHandler _doc.CommandCancelled, AddressOf _doc_CommandEnded


                AddHandler _doc.CommandEnded, AddressOf _doc_CommandEnded

                AddHandler _doc.CommandFailed, AddressOf _doc_CommandEnded
            End If

        End Sub



In C# funktioniert das Ganze einwandfrei.
In VB allerdings nicht.
Wenn ich die Linie oder den Kreis verschiebe stützt Autocad ab und folgender Fehler tritt auf
Zitat:
Eine verwaltete Ausführung wird innerhalb der Sperre für den OS-Loader versucht. Versuchen Sie nicht, verwalteten Code innerhalb einer DllMain- oder Bildinitialisierungsfunktion auszuführen, da dies ein Hängen der Anwendung zur Folge haben kann.

Es muss mit meiner Übersetzung des Codes zusammenhängen, da ab hier das Programm abgebrochen wird.
Kann mir jemand sagen was hier falsch ist?
Vielen Dank!

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

oscarr
Mitglied
CAD-Manager


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

Beiträge: 198
Registriert: 02.10.2007

ACA 2012 - English Win 7/x64

erstellt am: 27. Jan. 2011 14:50    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 Boehri 10 Unities + Antwort hilfreich

Hallo,

ich habe den c# beitrag ebenfals übersetzt.
Der Fehler in der automatischen Übersetzung liegt bei mir jedoch nicht in Deinen zitierten Bereich sondern in der Sub rollbackLocations()
Dort muss es bei der Deklerarion von a nicht:

Code:
Dim a As Double = _pos(System.Math.Max(System.Threading.Interlocked.Increment(i),i - 1))

(wat fürn quatsch soll das eigentlich sein???)
oder auch nicht:
Code:
Dim a As Double = _pos(i++)

(Das ist noch nicht mal VB.NET)

sondern meiner meinung nach:

Code:
Dim a As Double = _pos(i)
i += 1

den im c# hiess es ja:

Code:
double a = _pos[i++];

wobei i++ mit i +=1 übersetzt wird jedoch zuerst i ausgelesen und dann incrementiert wird.

glaube ich zumindestens

LG
Holger

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

Boehri
Mitglied



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

Beiträge: 80
Registriert: 07.04.2008

erstellt am: 01. Feb. 2011 07:11    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 oscarr,

herzlichen Dank. Das wars  .
Bis zum nächsten mal.

Gruß Boehri

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)2023 CAD.de | Impressum | Datenschutz