Rechteck.

Ein allgemeines Beispiel zur Verwendung der Klasse rect finden sie hier.

Rechteck. Das Modul definiert Rechteckobjekte und eine Reihe gebräuchlicher Funktionen für Rechtecke

static Rect rect::alloc()

Erzeuge ein Rechteck-Objekt. Ohne weitere Parameter wird eine neues leeres Rechteck (0.0, 0.0, 0.0, 0.0) angelegt.

Name Typ Default Beschreibung
Return Rect   Neues Rechteckobjekt. Das Objekt wird natürlich nicht als InDesign®-Rahmen angelegt.
⇨ Quadrat
s float - Seitenlänge des Quadrates. Ergebnis ist das Rechteck (0.0, 0.0, s, s)
⇨ Rechteck an der Stelle (0.0, 0.0)
w, h float, float - Größe des Rechteckes. Ergebnis ist das Rechteck (0.0, 0.0, w, h)
⇨ Rechteck
left, top, right, bottom float, float, float, float - Koordinaten des Rechteckes. Die Angaben werden nicht normalisiert!
int wrect (Rect r, char * trailer)
{
    if (strlen (trailer))	wlog ("", "%s	", trailer);
wlog ("", "%f, %f, %f, %f\n",   rect::left (r),   rect::top (r),   rect::right (r),   rect::bottom (r));
return 0; }
int main () { Rect r1 = rect::alloc (0.0, 0.0, 100.0, 200.0); Rect r2 = rect::alloc (80.0, 90.0, 110.0, 210.0); Rect intersect = rect::alloc (); Rect union_ = rect::alloc ();
rect::intersection (intersect, r1, r2); rect::union_ (union_, r1, r2);
wrect (r1, "R1"); wrect (r2, "R2"); wrect (intersect, "(-)"); wrect (union_, "(+)");
return 0; }

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.rect.create
comet.rect.createSquare

static Rect rect::clone(Rect org)

Erzeuge ein neues Rechteck als Kopie eines Rechteckes.

Name Typ Default Beschreibung
Return Rect   Neu erzeugtes Rechteck
org Rect - Original-Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

static int rect::release(Rect r)

Lösche ein Rechteckobjekt wieder aus dem Speicher.

Name Typ Default Beschreibung
Return int   immer 0
r Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

static float rect::left(Rect rect)

Hole den linken Wert des Rechteckes.

Name Typ Default Beschreibung
Return float   Linke Seite des Rechteckes
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getLeft
comet.CRect.getValues

static float rect::top(Rect rect)

Hole den oberen Wert des Rechteckes.

Name Typ Default Beschreibung
Return float   Obere Seite des Rechteckes
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getTop
comet.CRect.getValues

static float rect::right(Rect rect)

Hole den rechten Wert des Rechteckes.

Name Typ Default Beschreibung
Return float   Rechte Seite des Rechteckes
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getRight
comet.CRect.getValues

static float rect::bottom(Rect rect)

Hole den unteren Wert des Rechteckes.

Name Typ Default Beschreibung
Return float   Untere Seite des Rechteckes
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getBottom
comet.CRect.getValues

static float rect::width(Rect rect)

Hole die Breite des Rechteckes.

Name Typ Default Beschreibung
Return float   Breite des Rechteckes
rect Rect - Rechteck

v4.0.5 R18210, 19. Mai 2017

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getWidth

static float rect::height(Rect rect)

Hole die Höhe des Rechteckes.

Name Typ Default Beschreibung
Return float   Höhe des Rechteckes
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getHeight

static float rect::xcenter(Rect rect)

Mitte des Rechteckes auf der X-Achse.

Name Typ Default Beschreibung
Return float   Mitte des Rechteckes auf der X-Achse.
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getCenter

static float rect::ycenter(Rect rect)

Mitte des Rechteckes auf der Y-Achse.

Name Typ Default Beschreibung
Return float   Mitte des Rechteckes auf der Y-Achse.
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

static int rect::set_left(Rect rect, float l)

Setze den linken Wert des Rechteckes.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
rect Rect - Rechteck
l float - Neuer Wert

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.setLeft

static int rect::set_top(Rect rect, float t)

Setze den oberen Wert des Rechteckes.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
rect Rect - Rechteck
t float - Neuer Wert

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.setTop

static int rect::set_right(Rect rect, float r)

Setze den rechten Wert des Rechteckes.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
rect Rect - Rechteck
r float - Neuer Wert

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.setRight

static int rect::set_bottom(Rect rect, float b)

Setze den unteren Wert des Rechteckes.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
rect Rect - Rechteck
b float - Neuer Wert

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.setBottom

static int rect::set_width(Rect rect, float w)

Breite des Rechteckes setzen.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
Return w   float - Neue Breite
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.setWidth

static int rect::set_height(Rect rect, float h)

Höhe des Rechteckes setzen.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
rect Rect - Rechteck
h float - Neue Höhe

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.setHeight

static int rect::move_rel(
  Rect rect,
  float x,
  float y)

Rechteck relativ verschieben.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
rect Rect - Rechteck
x, y float, float - Werte der Verschiebung

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.moveBy

static int rect::move_to(
  Rect rect,
  float x,
  float y)

Rechteck an eine neue Position verschieben.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
rect Rect - Rechteck
x, y float, float - Neue Rechteckposition

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.moveTo

static int rect::center_on(
  Rect rect,
  float x,
  float y)

Rechteck an einer Position zentrieren.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
Return x, y   float, float - Neue Rechteckmitte
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.moveTo

static int rect::inset(
  Rect rect,
  float dx,
  float dy)

Rechteck an alle Seiten verkleinern/vergrößern.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
rect Rect - Rechteck
dx, dy float, float - Größenveränderungen. Positive Werte verkleinern das Rechteck, negative Werte vergrößern das Rechteck.

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.adjust

static int rect::intersect(Rect r1, Rect r2)

Haben zwei Rechtecke eine überschneidung?

Name Typ Default Beschreibung
Return int   0 : keine gemeinsame Fläche
1 : Ja, die Rechtecke überschneiden sich. Eine Kante darf sich dabei überschneiden.
r1 Rect - Rechteck 1
r2 Rect - Rechteck 2

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

intersection
union_
contains
comet.CRect.intersects

static int rect::intersection(
  Rect result,
  Rect r1,
  Rect r2)

überschneidungsfläche zweier Rechtecke.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
result Rect - Gemeinsame Fläche von r1 und r2 (leeres Rechteck, wenn die r1 und r2 keine Schnittmenge haben)
r1 Rect - Rechteck 1
r2 Rect - Rechteck 2
int wrect (Rect r, char * trailer)
{
    if (strlen (trailer))	wlog ("", "%s	", trailer);
wlog ("", "%f, %f, %f, %f\n",   rect::left (r),   rect::top (r),   rect::right (r),   rect::bottom (r));
return 0; }
int main () { Rect r1 = rect::alloc (0.0, 0.0, 100.0, 200.0); Rect r2 = rect::alloc (80.0, 90.0, 110.0, 210.0); Rect intersect = rect::alloc (); Rect union_ = rect::alloc ();
rect::intersection (intersect, r1, r2); rect::union_ (union_, r1, r2);
wrect (r1, "R1"); wrect (r2, "R2"); wrect (intersect, "(-)"); wrect (union_, "(+)");
return 0; }

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

intersect
union_
contains
comet.CRect.createIntersection

static int rect::union_(
  Rect result,
  Rect r1,
  Rect r2)

Vereinigung zweier Rechtecke. Das Ergebnis die Bounding box um beide Rechtecke.

Name Typ Default Beschreibung
Return int   0 oder Fehlercode
result Rect - Bounding box um r1 und r2
r1 Rect - Rechteck 1
r2 Rect - Rechteck 2
int wrect (Rect r, char * trailer)
{
    if (strlen (trailer))	wlog ("", "%s	", trailer);
wlog ("", "%f, %f, %f, %f\n",   rect::left (r),   rect::top (r),   rect::right (r),   rect::bottom (r));
return 0; }
int main () { Rect r1 = rect::alloc (0.0, 0.0, 100.0, 200.0); Rect r2 = rect::alloc (80.0, 90.0, 110.0, 210.0); Rect intersect = rect::alloc (); Rect union_ = rect::alloc ();
rect::intersection (intersect, r1, r2); rect::union_ (union_, r1, r2);
wrect (r1, "R1"); wrect (r2, "R2"); wrect (intersect, "(-)"); wrect (union_, "(+)");
return 0; }

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

intersection
contains
comet.CRect.createUnion

static int rect::contains_point(
  Rect rect,
  float x,
  float y)

Enthält ein Rechteck einen gegebenen Punkt?

Name Typ Default Beschreibung
Return int   0 : Nein
1 : Der Punkt liegt innerhalb des Rechteckes
rect Rect - Rechteck
x, y float, float - Punkt

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

intersection
contains
comet.CRect.containsPoint

static int rect::contains(Rect r1, Rect r2)

Enthält ein Rechteck ein gegbenes Rechteck?

Name Typ Default Beschreibung
Return int   0 : Nein, r2 ist nicht in r1 enthalten
1 : Ja, r1 enthält r2
r1 Rect - Rechteck
r2 Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

intersection
contains_point
comet.CRect.containsRect

static float rect::aspect_ratio(Rect rect)

Verhältnis von Breite zu Höhe eines Rechteckes.

Name Typ Default Beschreibung
Return float   Seitenverhälnis (Breite zu Höhe) des Rechteckes. Das leere Rechteck gibt 0.0 zurück.
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getAspectRatio

static float rect::area(Rect rect)

Größe eines Rechteckes.

Name Typ Default Beschreibung
Return float   Größe des Rechteckes.
rect Rect - Rechteck

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

comet.CRect.getArea

static float rect::is_equal(Rect r1, Rect r2)

Sind zwei Rechtecke gleich?

Name Typ Default Beschreibung
Return int   0 : Ungleich
1 : Gleich
r1 Rect - Rechteck 1
r2 Rect - Rechteck 2

Version 3.1 R2210, 29.11.2010

priint:comet InDesign® Plug-Ins, comet_pdf, Illustrator

int wrect (Rect r, char * trailer)
{
    if (strlen (trailer))	wlog ("", "%s	", trailer);
wlog ("", "%f, %f, %f, %f\n",   rect::left (r),   rect::top (r),   rect::right (r),   rect::bottom (r));
return 0; }
int main () { Rect r1 = rect::alloc (0.0, 0.0, 100.0, 200.0); Rect r2 = rect::alloc (80.0, 90.0, 110.0, 210.0); Rect intersect = rect::alloc (); Rect union_ = rect::alloc ();
rect::intersection (intersect, r1, r2); rect::union_ (union_, r1, r2);
wrect (r1, "R1"); wrect (r2, "R2"); wrect (intersect, "(-)"); wrect (union_, "(+)");
return 0; }

Seit
Version 3.1 R2210, 29.11.2010

Alphabetic index HTML hierarchy of classes or Java