Difference between revisions of "Dimensions"

From Wiki
Jump to navigation Jump to search
(Created page with " === Mit Maßeinheiten rechnen === ==== \definemeasure ==== Diese Möglichkeit zieht Wolfgang Schuster vor! \setupexternalfigures[location={local,global,default}] \definemea...")
 
Line 1: Line 1:
 
+
=== \definemeasure ===
=== Mit Maßeinheiten rechnen ===
 
 
 
==== \definemeasure ====
 
 
Diese Möglichkeit zieht Wolfgang Schuster vor!
 
Diese Möglichkeit zieht Wolfgang Schuster vor!
 
  \setupexternalfigures[location={local,global,default}]
 
  \setupexternalfigures[location={local,global,default}]
Line 18: Line 15:
 
  \externalfigure[cow][width=\measure{ColumnCD}]
 
  \externalfigure[cow][width=\measure{ColumnCD}]
  
==== \defineexpandable ====
+
=== \defineexpandable ===
 
  \setupexternalfigures[location={local,global,default}]
 
  \setupexternalfigures[location={local,global,default}]
 
   
 
   
Line 33: Line 30:
 
  \externalfigure[cow][width=\ColumnAB]
 
  \externalfigure[cow][width=\ColumnAB]
  
==== \newdimen ====
+
=== \newdimen ===
 
  \setupexternalfigures[location={local,global,default}]
 
  \setupexternalfigures[location={local,global,default}]
 
   
 
   
Line 49: Line 46:
 
\externalfigure scheint auch ohne "\the" zu funktionieren.
 
\externalfigure scheint auch ohne "\the" zu funktionieren.
  
==== \ctxlua ====
+
=== \ctxlua ===
 
  \setupexternalfigures[location={local,global,default}]
 
  \setupexternalfigures[location={local,global,default}]
 
   
 
   
Line 61: Line 58:
 
  \externalfigure[cow][width=\dimexpr(\ColumnABii)\relax]
 
  \externalfigure[cow][width=\dimexpr(\ColumnABii)\relax]
  
==== Sonstiges (problematisch) ====
+
=== Sonstiges (problematisch) ===
  
  
Line 80: Line 77:
 
\newdimen- und \define-Variable lassen sich wohl doch mischen. Das scheint falsch zu sein: \newdimen kann nicht mit Variablen rechnen, die mit \define festgelegt wurden.
 
\newdimen- und \define-Variable lassen sich wohl doch mischen. Das scheint falsch zu sein: \newdimen kann nicht mit Variablen rechnen, die mit \define festgelegt wurden.
  
==== Offene Fragen ====
+
=== Offene Fragen ===
 
  \the
 
  \the
 
  expand
 
  expand

Revision as of 20:49, 22 April 2013

\definemeasure

Diese Möglichkeit zieht Wolfgang Schuster vor!

\setupexternalfigures[location={local,global,default}]

\definemeasure[ColumnC][30mm]
\definemeasure[ColumnD][40mm]
\definemeasure[ColumnCD][\the\dimexpr(\measure{ColumnC}+\measure{ColumnD})\relax]

C \measure{ColumnC}

D \measure{ColumnD}

CD \measure{ColumnCD}

\externalfigure[cow][width=\measure{ColumnCD}]

\defineexpandable

\setupexternalfigures[location={local,global,default}]

\defineexpandable\ColumnA    {30mm}
\defineexpandable\ColumnB    {40mm}
\defineexpandable\ColumnAB    {\the\dimexpr(\ColumnA + \ColumnB)\relax}

A  \ColumnA

B  \ColumnB

AB: \ColumnAB

\externalfigure[cow][width=\ColumnAB]

\newdimen

\setupexternalfigures[location={local,global,default}]

\defineexpandable\ColumnA    {30mm}
\defineexpandable\ColumnB    {40mm}
\newdimen\ColumnAB \ColumnAB=\dimexpr(\ColumnA + \ColumnB)

A  \ColumnA

B  \ColumnB

ColumnAB: \the\ColumnAB

\externalfigure[cow][width=\the\ColumnAB]

\externalfigure scheint auch ohne "\the" zu funktionieren.

\ctxlua

\setupexternalfigures[location={local,global,default}]

\defineexpandable\ColumnA    {30mm}
\defineexpandable\ColumnB    {40mm}

\defineexpandable\ColumnABii   {\ctxlua{context([==[\ColumnA + \ColumnB]==])}}

ColumnABii: \the\dimexpr \ColumnABii\relax

\externalfigure[cow][width=\dimexpr(\ColumnABii)\relax]

Sonstiges (problematisch)

\define\variableA {20mm}
\newdimen\variableB \variableB = 30mm

\variableA % kann direkt ausgegeben werden:

\variableA

\variableB % kann nicht direkt ausgegeben werden ... ist aber auch nicht nötig.

Bei \define ist die Berechnung einer neuen Variable mit \dimexpr nicht möglich, wohl aber in Befehlen, wie \externalfigure, z.B.

\externalfigure[cow][width=\variableA *2]

In \newdimen können Berechnungen mit \dimexpr vorgenommen und in eine neue Variable gespeichert werden:

\newdimen\variableC \variableC = \dimexpr(\variableB * 2)

\newdimen- und \define-Variable lassen sich wohl doch mischen. Das scheint falsch zu sein: \newdimen kann nicht mit Variablen rechnen, die mit \define festgelegt wurden.

Offene Fragen

\the
expand
\relax


Link-Text