| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Verschieben mit gedrückter Maustaste (464 mal gelesen)
|
Ex-Mitglied
|
erstellt am: 28. Feb. 2006 11:25 <-- editieren / zitieren -->
Beim verschieben von Blöcken mit gedrückter Maustaste ist das eingestellte Raster und der Fang nicht wirksam. "dragmode" regelt ja nur die Sichtbarkeit beim Verschieben. Gibt es eine Variable, mit der man das verschieben mit gedrückter Maustaste abschalten oder ins Raster zwingen kann? Gruss Frederik ------------------ Aus der Finsternis sprach eine Stimme zu mir: "Lächle und sei froh, es könnte schlimmer kommen." Ich lächelte und war froh ....... und es kam schlimmer. |
Proxy Ehrenmitglied Stateless-DHCP v6-Paketfragmentierer
Beiträge: 1629 Registriert: 13.11.2003 Tastaturen, Mäuse, Pladden, Monitore, ...
|
erstellt am: 28. Feb. 2006 12:01 <-- editieren / zitieren --> Unities abgeben:
|
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 28. Feb. 2006 13:12 <-- editieren / zitieren --> Unities abgeben:
Hi, nur mal angenommen, man könnte den Fang beim Verschieben mit gedrückter Maustaste aktivieren, müsste dann nicht auch der Objektfang schon beim "Anfassen" aktiv sein muss, damit der richtige Punkt auf dem gewünschten Fangpunkt platziert wird? Abschalten kann man es, indem man PICKFIRST auf 0 stellt. Aber das macht sicher auch nicht wirklich Spaß. Gruß CADchup
------------------ CADmaro.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 28. Feb. 2006 13:43 <-- editieren / zitieren -->
Hallo Proxy, hallo CADchup entweder verstehe ich's nicht, oder es hilft mir nicht weiter. Unsere Blöcke haben zahreiche Attribute und Anschlusspunkte. Die Blöcke erhalten beim Einfügen einen eindeutigen Namen und werden über die Anschlusspunkte waagerecht und/oder senkrecht miteinander verbunden (ähnlich einem Stromlaufplan). Die Verbindungen und bekannten Daten (Attribute) werden automatisch in eine Oracle-Datenbank geschrieben. Wenn ein User einen Block markiert und danach die Maustaste noch einmal drückt und festhält, kann er den Block ohne Raster verschieben. Und wenn der dann nur 1 Pixel aus dem Raster liegt, passen die Verbindungslinien nicht mehr an die Anschlusspunkte und die ganze automatische Datengenerierung läuft nicht mehr. Benutzt er die Funktion "_move" laufen die Verbindungslinien als Gummiband mit und die Verbindung bleibt erhalten, da er nicht aus dem Raster herauskommt. Ich habe bereits vor Proxy's Hinweis mit den Einstellungen Objektfang, Ortho, Polar, Raster, Fang experimentiert. Aber ich kann beim Verschieben mit gedrückter Maustaste den Block nicht zwingend ins eingestellte Raster bringen. Hier wird anscheinend nicht "_move" aufgerufen. Die Befehlszeile gibt mir auch nicht aus, was in diesem Fall in AutoCad verwendet wird. Bei pickfirst=0 kann ich keinen Block mehr markieren. Dies brauche ich aber, da über markieren + Menüauswahl die entsprechenden Dateneingabefelder einer parallel mitlaufenden Oracle-Datenbank geöffnet werden. Wenn sich keine Einstellmöglichkeit findet, werden wir wohl eine zyklische Prüfung der Einfügepunkte einbauen und die Blöcke nachträglich automatisch ins nächstgelegene Raster setzen. Trotzdem erst mal vielen Dank für Eure Beiträge. Gruss Frederik @ CADchup wegen "Aber das macht sicher auch nicht wirklich Spaß" Wir sind keine typischen AutoCad-Anwender. Wir konstruieren oder zeichnen nichts. Wir stapeln nur vorbereitete Blöcke neben- und/oder übereinander, verbinden diese und geben über Eingabefelder technische Daten in eine mitlaufende Oracle-Datenbank ein.(Siehe beigefügtes Beispielbild, das einen ganz, ganz kleinen Ausschnitt aus einem Stellwerk zeigt. Realistisch sind da Pläne ab 400 Blöcke bis zu 3500 Blöcke je Plan.) ------------------ Aus der Finsternis sprach eine Stimme zu mir: "Lächle und sei froh, es könnte schlimmer kommen." Ich lächelte und war froh ....... und es kam schlimmer. [Diese Nachricht wurde von F - WI 49 am 28. Feb. 2006 editiert.] |
Proxy Ehrenmitglied Stateless-DHCP v6-Paketfragmentierer
Beiträge: 1629 Registriert: 13.11.2003 Tastaturen, Mäuse, Pladden, Monitore, ...
|
erstellt am: 28. Feb. 2006 14:51 <-- editieren / zitieren --> Unities abgeben:
|
Ex-Mitglied
|
erstellt am: 28. Feb. 2006 15:23 <-- editieren / zitieren -->
Hallo Proxy, das passt für uns nicht. Wir machen Eisenbahnsignaltechnik. Hinter den Zeichnungen steht eine Datenbank und Programme, die auf die Projektierung unserer Produkte (Rechner/Software) zugeschnitten sind. Hier wird nicht "gezeichnet" und keine Stücklisten oder Montagepläne erstellt, sondern Sicherungstechnik projektiert (unter anderem Elementmerkmale (z.B. für Signal, Weichen, Gleisüberwachung, u.s.w.), Fahrstrassen für Zug- und Rngierfahrten, Anzeigen für Bedienplätze, automatische Zuglenkung, u.s.w.). Vieles davon wird automatisch abgeleitet, z.B. durch die Verbindungen der Blöcke und Inhalt von Attributen. Das Altprodukt, mit dem wir jetzt ca. 15 Jahre arbeiten, läuft unter dem Betriebssystem VMS auf VAX-Workstations und soll durch ein neues Tool auf PC-Plattform abgelöst werden. Dazu brauchen wir ein CAD-Programm mit offener C-Schnittstelle. Wenn Ihr mal wieder in Stuttgart seid (z.B. zur cad.de) lade ich Euch gerne mal zu einer Vorführung ein. Gruss Frederik ------------------ Aus der Finsternis sprach eine Stimme zu mir: "Lächle und sei froh, es könnte schlimmer kommen." Ich lächelte und war froh ....... und es kam schlimmer. |
dr-nikolai Ehrenmitglied
Beiträge: 1790 Registriert: 10.04.2002
|
erstellt am: 28. Feb. 2006 18:02 <-- editieren / zitieren --> Unities abgeben:
|
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 28. Feb. 2006 22:13 <-- editieren / zitieren --> Unities abgeben:
Hi, wenn die Fehler wirklich im laufenden Betrieb korrigiert werden sollen, wirst du um eine Programmierung mit Object-Reactors, bzw. Events nicht herum kommen. Zum Beispiel könnte man den Basispunkt jedes Inserts überwachen und ggf. automatisch auf den nächsten Rasterpunkt schieben lassen. Die Frage ist nur, ob der Programmier- und damit auch der finanzielle Aufwand sich rechnet oder ob (bei entsprechender Systematik in eurer Projektierung) nicht auch dynamische Blöcke eine Lösung sein könnten. Eine weitere Möglichkeit wäre noch die von dir angesprochene zyklische Überprüfung der Inserts. Auch hier könnte man (der Automatisierung wegen) mit Reaktoren arbeiten, die bei jedem Öffnen, Speichern, Plotten ihren Rundgang machen. Gruß CADchup
------------------ CADmaro.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 01. Mrz. 2006 09:46 <-- editieren / zitieren -->
Ja den Aufwand für die Programmierung werden wir wohl betreiben müssen. Mit dem eigenentwickelten Paket decken wir schließlich unser Tagesgeschäft ab. Was da gemacht werden muss, sollten unsere Entwickler wissen. Da kümmere ich mich nicht drum. Ich hatte nur gehofft, das es irgendwie einfacher geht. Wie z.b. das unterdrücken des Doppelklicks mit "dpklibearb". Was übrigens auch in der AutoCad-Hilfe/entwickler-Hilfe nicht zu finden ist. Danke. Gruss Frederik ------------------ Aus der Finsternis sprach eine Stimme zu mir: "Lächle und sei froh, es könnte schlimmer kommen." Ich lächelte und war froh ....... und es kam schlimmer. |
j-sc Ehrenmitglied
Beiträge: 1837 Registriert: 14.07.2003 W7 64Bit intel core I7 2,8GHz / 4GB ATI FIRE PRO V5800 acad2011 acad2015 acad2018 Athena Expresstools
|
erstellt am: 01. Mrz. 2006 10:43 <-- editieren / zitieren --> Unities abgeben:
High, Komisch, in meiner Acad-Hilfe steht dazu Folgendes: Schnipp... Steuert das Doppelklickverhalten. Befehlszeile: dpklibearb Doppelklick-Bearbeitungsmodus eingeben [EIN/AUS] <aktuell>: Wenn Sie diese Option aktivieren, richtet sich das angezeigte Dialogfeld nach dem Typ des Objekts, auf das Sie doppelt geklickt haben. Bei den meisten Objekten wird beim Doppelklicken die Palette Eigenschaften angezeigt. Bei bestimmten Objekttypen werden leistungsfähige, benutzerfreundliche oder häufig verwendete Editoren aufgerufen. Bei folgenden Objekten wird durch einen Doppelklick ein spezieller Editor geöffnet: Attribut: Zeigt das Dialogfeld Attributsdefinition bearbeiten an ( DDEDIT). Attribut in einem Block: Zeigt den Erweiterten Attributs-Editor an ( EATTEDIT). Block: Zeigt das Dialogfeld Referenz bearbeiten an ( REFBEARB). Schraffur: Zeigt das Dialogfeld Schraffur bearbeiten an ( SCHRAFFEDIT). Text von Führungen: Zeigt den MText-Editor an ( DDEDIT). Multilinie: Zeigt das Dialogfeld Multilinien bearbeiten an ( MLEDIT). Absatztext: Zeigt den MText-Editor an ( DDEDIT). Text: Zeigt das Dialogfeld Text bearbeiten an ( DDEDIT). XRef: Zeigt das Dialogfeld Referenz bearbeiten an ( REFBEARB). ...Schnapp Die werden da doch wohl nicht unterschiedliche verkaufen ------------------ Ciao J-SC ... geht's vielleicht doch? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 01. Mrz. 2006 11:14 <-- editieren / zitieren -->
Ist schon kurios. Gruss Frederik ------------------ Aus der Finsternis sprach eine Stimme zu mir: "Lächle und sei froh, es könnte schlimmer kommen." Ich lächelte und war froh ....... und es kam schlimmer. |
j-sc Ehrenmitglied
Beiträge: 1837 Registriert: 14.07.2003 W7 64Bit intel core I7 2,8GHz / 4GB ATI FIRE PRO V5800 acad2011 acad2015 acad2018 Athena Expresstools
|
erstellt am: 01. Mrz. 2006 11:25 <-- editieren / zitieren --> Unities abgeben:
|
CADchup Ehrenmitglied V.I.P. h.c.
Beiträge: 3329 Registriert: 14.03.2001 Sicher ist, dass nichts sicher ist. Selbst das nicht. Joachim Ringelnatz
|
erstellt am: 01. Mrz. 2006 12:50 <-- editieren / zitieren --> Unities abgeben:
|
Stelli1 Ehrenmitglied Verm.-Ing.
Beiträge: 1521 Registriert: 17.08.2005 Map 2000-2013, Rasterdesign MapGuide 6.5 - 2013 Oracle 9i,10g,11g Enterprise autodesk Topobase 2-2012 VS6, VS.net
|
erstellt am: 01. Mrz. 2006 13:29 <-- editieren / zitieren --> Unities abgeben:
Hallo Frederik, wenn du den folgenden Code verwendest werden deine Blöcke immer auf einen Rasterwert geschoben. Egal wie sie verändert werden. Code:
Option Explicit Public BlockRef As AcadBlockReferencePrivate Sub AcadDocument_EndCommand(ByVal CommandName As String) Dim InsPkt As Variant Dim Raster As Integer Raster = 15 If Not BlockRef Is Nothing Then InsPkt = BlockRef.InsertionPoint InsPkt(0) = (InsPkt(0) \ Raster) * Raster InsPkt(1) = (InsPkt(1) \ Raster) * Raster BlockRef.InsertionPoint = InsPkt BlockRef.Update End If End Sub Private Sub AcadDocument_ObjectModified(ByVal Object As Object) On Error Resume Next Set BlockRef = Object If Err.Number <> 0 Then Set BlockRef = Nothing End If End Sub
Den Code im VBA Editor in den Abschnitt "ThisDrawing" kopieren und los gehts. Die Rasterweite ist hier auf 15 ZE eingestellt.Stelli ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| CAD/PLM Experte (m/w/d) für CREO & Windchill | KraussMaffei ist einer der weltweit führenden Hersteller von Maschinen und Anlagen für die Produktion und Verarbeitung von Kunststoff und Kautschuk. Als einziger Anbieter im Markt vereinen wir alle Technologien der Kunststoffverarbeitung und stehen seit mehr als 180 Jahren für Spitzentechnologie und wegweisende Innovationen. Mit unseren Lösungen arbeiten Kunden aus Automobil-, Bau-, Medizin- und Verpackungsindustrie, sowie Hersteller von Konsumgütern.... | Anzeige ansehen | Projektmanagement |
|
Ex-Mitglied
|
erstellt am: 01. Mrz. 2006 14:01 <-- editieren / zitieren -->
Hallo Stelli, vielen Dank erstmal. Ich bin kein Entwickler und auch kein richtiger AutoCad-Anwender. VBA und deren Anwendung sind für mich eigentlich Fremdworte. Ich schreibe die MNU-Dateien (z.Zt. 9 Anwendungen), mache Werkzeugkästen, Bildmenüs, die CHM-Hilfedateien und teste unser Tool, bevor wir es für die Produktion freigeben. Das AutoCad läuft bei uns nur im Hintergrund, d.h. unsere Eigenentwicklung nutzt teilweise AutoCad-Funktionalität. Leider lassen sich sich manche AutoCad-Funktionen aber nicht völlig auschalten, wie z.B. das verschieben von Blöcken mit gedrückter Maustaste. Wenn ich solche (für uns gravierende) Lücken finde, versuche ich in der Hilfe und im Forum eine einfache Lösung zu finden, bevor ich dies an unsere Entwickler zurückgebe. Ich geb Deinen Beitrag mal an unsere Entwickler weiter. Da für unsere Eigenentwicklung nur C++ verwendet werden darf, da das Tool validiert und zugelassen werden muss (Sil-Level), sollen unsere Entwickler mal schauen, ob Ihnen Dein Ansatz weiterhilft. Danke und Gruss Frederik ------------------ Aus der Finsternis sprach eine Stimme zu mir: "Lächle und sei froh, es könnte schlimmer kommen." Ich lächelte und war froh ....... und es kam schlimmer. |