ich habe gerade versucht, die Bemaßung (Texthöhe, Pfeilgröße …) proportional in einer Zeichnung zu skalieren und ich bin dabei auf eine Seltsamkeit gestoßen, die ich mir nicht erklären kann. Ich denke, es handelt sich um einen Bug in QCAD.
Wenn ich in den Zeichnungseinstellungen unter “Skalierung für alle Grössen” einen Faktor >1 eingeben, wird die Bemaßung entsprechend diesem Faktor angepasst. Bei einem Faktor 2 wird so aus der Texthöhe 2,5 ZE wie erwartet 5 ZE. Gebe ich nun wieder einen Faktor 1 ein, wird die Höhe 2,5 ZE. So weit alles wie erwartet.
Will ich aber nun eine kleinere Texthöhe, z.B. 1,25 anstatt 2,5 einstellen, dann sollte ich doch eigentlich den Skalierungsfaktor 0,5 eingeben. Dieser Wert wird aber von QCAD einfach ignoriert und beim nächsten Öffnen der Zeichnungseinstellungen steht dort wieder die ursprüngliche 1.
Es wird aber noch seltsamer: Gebe ich einen Faktor ungleich 0,5 ein, z.B. 0,25, dann funktioniert alles wieder wie erwartet. Aus der Text-Höhe wird 2,5/4 ZE. Auch bei 0,4999999 funktioniert es. Der Text wird mit einer Höhe von ca. 1,25 ZE angezeigt.
Kann das jemand bestätigen?
Ich arbeite mit QCAD 3.17.1.5 und MacOS Sierra.
ein Workaround, um auch mit dem Faktor 0,5 zu arbeiten, ist die Eingabe von 0,4999999 als Faktor. Dieser Werte wird von QCAD auf 0,5 gerundet und auch beibehalten.
PS:
Es kommt vor, dass ich Zeichnungen in stark unterschiedlichen Maßstäben ausgeben muss. Da Texte, Linienstärken, Schraffurmuster und Bemaßungen auch vom Plotmaßstab abhängen, wäre es prima, wenn ich auf eine ähnliche Art und Weise wie bei den Bemaßungen über einen separaten Dialog auch einen globalen Faktor für die Textgröße, die Linienstärke und die Schraffurgröße eingeben könnte.
die “Nicht-Übernahme” des eingegebenen Wertes ist unabhängig von einer Zeichnung und tritt auch bei einer neuen Zeichnung auf, die nur eine Bemaßung enthält.
Manchmal funktioniert jetzt das Wechseln von 1 auf 0,5 aber das Zurückstellen von 0,5 auf 1 klappt nicht. Erst nach Eingabe von 0,9999999 wird der Wert 1 übernommen und auch richtig angewendet. Der Wechsel von 0,25 auf 1 und vice versa und auch jede andere Kombination außer zwischen 0,5 und 1 hingegen funktioniert korrekt.
Auch eine frische QCAD3.ini ändert an dem Verhalten nichts.
Ich mache die gleiche Beobachtung übrigens auch auch auf meinem MacBook Air ebenfalls unter Sierra.
Heute nachmittag werde ich es auf einem anderen iMac testen können.
Unter Windows 10 Pro in einer virtuellen Maschine hingegen funktioniert alles perfekt. Es scheint also an QCAD und “meinem” Sierra (Plural) zu liegen.
Wie auch immer, ich habe inzwischen gelernt, wie ich das Problem umgehen kann.
Interessanter ist für mich die globale Änderung der Textgröße, der Linienstärke und des Schraffurmusters über einen ähnlichen Korrekturfaktor.
Gibt es da eine Chance, dies kurzfristig zu implementieren?
ich arbeite unter Win10 und konnte gestern - laut Deiner Beschreibung - das Problem nicht reproduzieren …
… heute mit Deiner ergänzenden Info das die Zeichnungseinheiten konvertiert wurden ist das Problem für mich nachvollziehbar.
Jede Änderung in der Skalierung - die ich in den Zeichnungseinstellungen ausprobiert habe - scheitert. Benutze ich den Eigenschaften Editor funktioniert es.
Long story short: Ich denke das Konvertierungs-Werkzeug ist der Übeltäter …
da bin ich aber froh, dass Du das nachvollziehen kannst. Irgendwo ist da der Wurm drin. Ich glaube aber nicht, dass es nur an der Einheitenumrechnung liegt, oder wenn doch, auf jeden Fall nicht alleine, denn wenn Du im Feld Texthöhe den Skalierungsfaktor eingibst (z.B. 2,5 *1000), dann funktioniert alles so wie erwartet. Es scheint also irgendetwas mit dem Dialog “Bemassungseinstellungen” bzw. dessen Einbindung nicht zu stimmen.
Mal abwarten was Andrew dazu sagt.
Was genau heisst “scheitert”? Wird der Wert in den Einstellungen nicht akzeptiert? Also es wird z.B. “2” eingegeben aber wenn der Dialog danach nochmals aufgerufen wird steht noch immer “1” da?
Oder hat die Eingabe einfach keinen Effekt auf die Zeichnung?
die Eingabe im Feld “Skalierung für alle Größen” wird nach Drücken von “Anwenden” und nach Drücken von “OK” und anschließendem Wiederöffnen des Dialogs übernommen, aber es hat keinen Effekt auf die Zeichnung.
Skaliere ich hingegen über das Feld “Text Höhe”, also z.B. “2,5/2” dann wird das Ergebnis ebenfalls übernommen und auch angewendet.
Eine funktionierende globale Skalierung für Texte und Linienstärken wäre dann ein nächster Schritt.
Die Skalierung der Bemassung kann für die ganze Zeichnung eingestellt werden unter Bearbeiten > Zeichnungseinstellungen oder für jede individuelle Bemassung über den Eigenschafteneditor. Die Eigenschaft hat dabei Priorität (Override).
Das Werkzeug zum Konvertieren der Zeichnungseinheit trägt den Faktor bei jeder Bemassung einzeln neu ein, weshalb die Änderung der Zeichnungseinstellung danach keinen Effekt mehr hat. Dies kann wie folgt rückgängig gemacht werden:
Und was ist mit der globalen Skalierung von Texten und Linienstärken?
Bei Texten mit unterschiedlicher Größe steht nach einer Text-Selektion im Eigenschaften Editor unter Texthöhe: VARIERT.
Damit kann QCAD leider nicht rechnen. Man müßte nun für jede vorkommende Textgröße eine separate Selektion und Anpassung vornehmen, denn nur dann taucht unter Texthöhe eine Zahl auf, mit der QCAD weiterrechnen kann. Das kann u.U. sehr aufwändig werden.
Bei Linienstärken habe ich überhaupt keine Möglichkeit gefunden auf die plotmaßstababhängige Linienstärke Einfluß nehmen zu können.
Eine globale Skalierung von Textgrössen oder Linienstärken ist im DXF/DWG Format nicht vorgesehen. Linienstärken werden in der Regel über den Layer gesteuert.
Zum Skalieren von allen Texten (ohne Änderung des Referenzpunktes) gibt es kein Werkzeug in QCAD. Allenfalls kannst du dieses Skript verwenden:
doc = getDocument();
ids = doc.queryAllEntities();
for (i=0; i<ids.length; i++) {
e = doc.queryEntity(ids[i]);
if (isTextBasedEntity(e)) {
scale(e, 0.5, e.getAlignmentPoint());
}
}
Der Faktor kann natürlich entsprechend angepasst werden (hier 0.5).
Einfach die Skriptshell öffnen unter Diverses > Entwicklung > Skriptshell und den obigen Code als einen Block einfügen (Paste).
Vielen Dank, aber das klappt noch nicht.
Es wird ein “Script exception in script PFAD/FILENAME.DXF” und SyntaxError: Parse error" ausgegeben.
Ich habe leider zu wenig Kenntnisse, um daraus ein Script zu machen, mit dem auch einige Abfragen gemacht werden könnten
Ok, danke. Ich werde das später noch einmal versuchen.
Da das häufiger vorkommt, wäre natürlich ein richtiges Script mit der Möglichkeit der Faktoreingabe schon etwas anderes.
Aber damit bin ich überfordert. Ich bin kein Programmierer sondern nur Anwender.
Für dich ist das doch sicher eine Kleinigkeit von einer 1/2 h, oder?
Den Stundensatz kenne ich ja. :mrgreen:
Und dann muß ich auch nach der Aktualisierung auf 3.17.2 feststellen, dass das zuvor beschriebene Problem mit der Übernahme von Zahlen im Feld “Skalierung für alle Grössen” nicht beseitigt ist.
Eingegebene Zahlen <1 werden aus diesem Feld nicht übernommen. Mein QCAD verwendet in den Einstellungen “Komma” und nicht “Punkt” als Dezimaltrennzeichen. Vielleicht hat dies einen Einfluß !?
Tatsache ist, dass es auf 2 unterschiedlichen iMacs und einem MacBook Air alle mit OSX Sierra nicht funktioniert.
Unter Windows habe ich keine Probleme.
Da Du es nicht nachvollziehen konntest und ich nicht weiss, ob es eventuell an anderen Einstellungen bei mir liegt, habe ich meine ini-Datei angehängt.
Vielleicht hilft es.
Und dann muß ich auch nach der Aktualisierung auf 3.17.2 feststellen, dass das zuvor beschriebene Problem mit der Übernahme von Zahlen im Feld “Skalierung für alle Grössen” nicht beseitigt ist.
Leider kann ich dies auch mit deiner ini Datei nicht nachvollziehen.
Ich habe aber einige Rückfragen:
Wird der Wert im Dialog übernommen, d.h. wird ein Wert von 0.5 gesetzt, bleibt dieser dann erhalten wenn der Dialog bestätigt und dann nochmals aufgerufen wird?
Haben die entsprechenden Bemassungen eine Skalierung von “0” im Eigenschafteneditor? Dies ist eine Voraussetzung, da sonst der individuelle Wert der Bemassung verwendet wird.
Kurze Rückmeldung meinerseits weil ich in 3.17.1 das Problem nachvollziehen konnte:
Momentan sieht es für mich so aus das 3.17.2 das Problem behoben hat. Alles funktioniert wie erwartet. Meine Testzeichnung wurde aufgebaut laut der hier geposteten Beschreibung.
Edit: Ich habe nun die Testzeichnung gespeichert und mit 3.17.1 geöffnet. Im Eigenschaften Editor wird 1 für den Skalierungsfaktor angezeigt.
Selbe Zeichnung geöffnet in 3.17.2. Hier wird nun im Eigenschaften Editor 0 für Skalierungsfaktor angezeigt was wohl das Problem behoben hat. test.dxf (101 KB)
Ja, die Skalierung ist auf 0.
Ich habe jetzt eine Datei eingefügt, bei der die “Skalierung für alle Größen” auf 0.5 steht (von 1 auf 0,5 hat einmalig geklappt).
Jetzt läßt sich dieser Wert nicht wieder auf 1 zurücksetzen. Auch nach Schließen und Neustarten von QCAD kann ich diesen Wert 0.5 nicht auf 1 ändern. Er wird erst gar nicht übernommen. Es bleibt auch nach Schließen und erneutem Öffnen des Dialogs auf 0.5.
Wenn ich aber nach dem Markieren des Feldes 0,999999 eingebe, dann wird der gerundete Wert 1 übernommen und die Bemaßung entsprechend skaliert.
@Husky, wie ich schon sagte unter Windows habe ich auch keine Probleme damit, insofern wundert es mich nicht, dass Du das Problem nicht nachvollziehen kannst. Was ich nicht verstehe, dass es bei Andrew unter OSX nicht nachvollziehbar ist.
So, obwohl es bei mir unter Win10 läuft habe ich weitergespielt und wenn der User crazy wird (ich) kann ich auch hier ein seltsames verhalten feststellen …
Zunächst zu Deinem letzten Post was mich auf die Idee gebracht hat das auszuprobieren. Du schreibst 0,5 mal mit Komma und mal mit Punkt. Was benutzt Du in QCAD und gibt es in Deinem OSX eine Einstellung für das default Koordinatenformat? Könnte das abweichen von Andrews Einstellungen und er deshalb das Problem nicht reproduzieren kann?
Mein Win und QCAD hat einen Punkt für den Dezimalpunkt. Benutze ich den für Deine Testzeichnung funktioniert alles tadellos.
Benutze ich aber fälschlicherweise ein Komma dann bekomme ich keine Fehlermeldung bei der Eingabe. Die Bemaßung verändert sich dann aber anders als erwartet und zurück in den Einstellungen kann ich dann sehen das der Skalierungsfaktor von QCAD verändert wurde.
Aus 2,5 wird 5,
aus 7,5 wird 5,
aus 0,7777 wird 7777 und aus 0,9999 wird 9999.
Mit einem Punkt geschrieben sind die Werte tadellos von QCAD umgesetzt und gespeichert worden.
Ich verwende in OSX die Standard-Einstellungen für “D”, also “,” als Dezimaltrennzeichen. In QCAD die gleichen Einstellungen.
Selbst mit einer Umstellung unter OSX auf “USA”, d.h. “.” als Dezimaltrennzeichen und einer gleichen Änderung in QCAD ändert sich an dem Verhalten des Eingabefeldes wenig.
Seltsamerweise kann ich von “0,5” oder auch “0.5” auf “2” beliebig hin und her springen. Die eingegebenen Werte werden übernommen.
Von “0,5” bzw. “0.5” auf “1” hingegen wird nicht übernommen.
Auch wenn ich anstatt “1” “0,9999999” und anstatt “0,5” “0,4999999” eingebe, funktioniert alles tadellos. Mit diesem Umweg kann ich mir also helfen und insofern ist das ganze Thema nicht so dramatisch.
Ich will hier auch niemandem mit meinem, wenn auch auf mehreren Mac auftretenden, vielleicht spezifischen Problem auf den Nerv gehen.