Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: GEOS-InfoBase-Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

Mittwoch, 9. Januar 2019, 10:52

Kleines Rätsel

Um was für Grafik-Objekte handelt es sich hier? Es sind einzelne Objekte, die nicht aus anderen zusammengesetzt sind und die verschiebbar, verzerrbar usw. sind.
»Wilfried« hat folgendes Bild angehängt:
  • Raetsel.GIF

2

Mittwoch, 9. Januar 2019, 11:29

Das Grüne ist eine Linie mit Pfeilspitze am Anfang, bzw. Ende. ;)
Das Rotgrüne ist ein gefüllter Polygonzug mit drei Punkten.
Und wie Du das Schwarze hinbekommen hast, weiß ich nicht. :(
d[ 0_O ]b

3

Mittwoch, 9. Januar 2019, 11:57

<<Das Grüne ist eine Linie mit Pfeilspitze am Anfang, bzw. Ende. ;)>>

Mit so runden Ecken? Aber grundsätzlich richtiger Ansatz.

<<Das Rotgrüne ist ein gefüllter Polygonzug mit drei Punkten.>>

Tatsächlich wurde das Objekt anders hergestellt, aber diese Lösung ist gleichwertig :) .

4

Mittwoch, 9. Januar 2019, 16:49

Erinnert mich an dreidimensionale Objekte, Röhren.
Bernd

5

Mittwoch, 9. Januar 2019, 18:24

Kalt :(

6

Donnerstag, 10. Januar 2019, 12:32

Nachfrage: Erzeugt direkt mit GeoDraw oder mit etwas eigenem?
Ich tippe auf R-BASIC graphic.lineJoin bzw. graphic.lineEnd bzw. dem entsprechenden SDK-Analogon. 8)
Rainer
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

7

Donnerstag, 10. Januar 2019, 16:16

Wenn du so direkt fragst, muss ich wohl Farbe bekennen :) :

Zunächst wollte ich wissen, ob ich in GeoDraw bisher etwas übersehen habe. Jörg hat eine Möglichkeit gefunden, die ich bisher so nicht gesehen hatte.

Alle 3 Objekte sind in GeoCad (1.9) entstanden: Linien in Verbindung mit variabler Pfeikspitze und variablem Linienende. Ist das in R-Basic so auch möglich?

Wilfried

8

Freitag, 11. Januar 2019, 15:31

Ich habe das, was in der offiziellen SDK-Doku steht, probiert und rausgeführt. Vielleicht hat ja Jörg noch etwas "inoffizielles" gesehen? Ich kenne drei Arten Linienenden und drei Arten Linienverbindungen.
Im Bild ist BASIC-Code. 3 blaue Linien und ein rotes Rechteck.
Was ich nicht hinbekommen habe, ist eine Pfeilspitze an eine Linie zu machen.
Gruß
Rainer
»Rainer« hat folgendes Bild angehängt:
  • FIGUREN.GIF
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

9

Freitag, 11. Januar 2019, 17:11

Was ich nicht hinbekommen habe, ist eine Pfeilspitze an eine Linie zu machen.


Der Assemblercode für die GrObj-Library enthält solch schöne Sachen wie:
  • MSG_GO_SET_ARROWHEAD_ON_END
  • LineAdjustRectDWFixedByLineWidthForArrowheads
  • LineDrawStartArrowhead
  • LineDrawEndArrowhead
  • GrObjGetArrowheadPoints
  • GrObjGetArrowheadInfo
  • GrObjDrawArrowhead


siehe https://github.com/bluewaysw/pcgeos/blob…/Shape/line.asm

So wie es aussieht, fehlen sie im GOC-Teil des SDKs... :(

Jörg

Andere passende Quelltexte:
https://github.com/bluewaysw/pcgeos/blob…headControl.asm
https://github.com/bluewaysw/pcgeos/blob…wheadControl.ui
Die Icons dazu stammen aus diesem PCX-Bild: https://github.com/bluewaysw/pcgeos/blob…j/Art/grobj.pcx
d[ 0_O ]b

10

Freitag, 11. Januar 2019, 18:55

Rainer:
<<Ich kenne drei Arten Linienenden und drei Arten Linienverbindungen>>

Die habe ich in den Controllern von GeoCad :) .

Jörg:
<<So wie es aussieht, fehlen sie im GOC-Teil des SDKs>>

Dem kann ich nicht zustimmen. Bis auf die angeführte MSG sind das nur andere Namen für die entsprechenden Msgs in GOH/DEF. Neben der angeführten Msg gibt es etliche weitere Msgs für die Pfeile:
z.B. Einstellung der Flügellängen, Einstellung des Winkels, gefüllt/nicht gefüllt.
Das schwarze Objekt besteht aus einer kurzen dicken Linie mit Pfeilspitze am Ende. Die Pfeilflügellänge beträgt ca. 1 cm und der Öffnungswinkel 135°. Außerdem sind die Linienenden noch auf rund gestellt.


Wilfried

11

Freitag, 11. Januar 2019, 22:29

Nachtrag: Hier der BASCI Code zum Bild. Dank Clipper :)

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
	graphic.lineJoin = 1
	graphic.lineEnd = 1
	graphic.lineWidth = 30
	
	line 37,125,80,100
	line 80,50,80,100
	line 123,125,80,100
	
	ink light_red
	Rectangle 160, 50, 250, 125
	
	DemoBitmap.clpcopy

Rainer
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

12

Freitag, 11. Januar 2019, 22:38

Hallo Wilfreid
z.B. Einstellung der Flügellängen, Einstellung des Winkels, gefüllt/nicht gefüllt.

wenn ich das recht verstehe machst du das über Objekte aus der GrObjLibrary? Siehst du eine Möglichkeit das ohne GrObj Objekte zu machen, also direkt als Zeichenbefehl analog GrDrawLine() ?
Gruß
Rainer
P.S. Für das setzen von LineEnd /LineJoin nutze ich GrSetLineEnd() / GrSetLineJoin()
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

13

Samstag, 12. Januar 2019, 10:38

<<wenn ich das recht verstehe machst du das über Objekte aus der GrObjLibrary?>>

Richtig.

<<Siehst du eine Möglichkeit das ohne GrObj Objekte zu machen, also direkt als Zeichenbefehl analog GrDrawLine() ?>>

Leider nein. Ich hatte schon vor vielen Jahren nach einer solchen Möglichkeit für Koordinatenachsen gesucht, damals für GeoGraf. Viel später dann noch einmal für GrafCalc. Beide Male war dann 'Handarbeit' angesagt. Allerdings verstehe ich nicht, warum ausgerechnet die Pfeile nur in der Object-Grafik angeboten werden. Alle anderen Linienattribute werden ja parallel abgehandelt.

Wilfried

14

Samstag, 12. Januar 2019, 11:49

Schade. Wenn ich das richtig interpretiere werden Pfeilspitzen intern durch Polygone gemacht. Ist aber nur ne Vermutung.
Gruß
Rainer
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

15

Samstag, 12. Januar 2019, 16:20

Tatsächlich durch Polylines.

Der Sourcecode dazu steht hier: GrObj\GrObj\grobjDraw.asm ab Zeile 2800, GrObjDrawOneArrowhead

Wilfried

16

Sonntag, 13. Januar 2019, 11:33

Ja, meinte ich doch. :-) Danke.
Den Quellcode zieh ich mir nachher gleich mal rein.
Gruß
Rainer
Es gibt 10 Arten von Menschen - die einen wissen was binär ist, die anderen nicht.

Zur Zeit sind neben Ihnen 2 Benutzer in diesem Thema unterwegs:

2 Besucher

Ähnliche Themen

Thema bewerten