DELPHI4Test2014
CommanderDoit ¦ Jan2022 — UNIVERSUMS HISTORIA | 2011V4 ¦ 2022I18 | aproduction
| Senast uppdaterade version: 2022-08-20 YMD ¦ HumanRight
is a knowledge domain
content · webbSÖK äMNESORD på
denna sida Ctrl+F • SubjectINDEX • all files • helpStart
DISPOSITION
Vidareutvecklat Från DELPHI 4 Test 2011
|
T2014CommanderDoit — HUVUDDELEN AV VERKTYGEN MAN BEHÖVER
FÖR AVANCERAD DATORANVÄNDNING I TEXT OCH BILD
DISPOSITION | Teckenförklaringar: MusKLICKVänster |
Höger: |
— RullaMushjulet FRÅN |
MOTDig: |
Commander Doit
ALLMÄNNA RITVERKTYG
Commander Doit
Linje1 | Penna2 | PennaPunkt3 | PennaLasso4 | Cirkel4 | Cirkel4 koncentriska K | Cirkel4
konc.fylld J | Cirkel4 solfjäder F | Ellips | KvadratRektangel | Linje | Linje | Linje |
Ctrl+Shift+C
eller snabbtangenter direkt när man är bekant NUMPAD 1 2 3 decimalkomma 4 5 6 med resp.
Linje
Penna PennaPunkt PennaLasso Cirkel Ellips Kvadrat
CIRKELN har underavdelningar KJF resp. Koncentriska#, KoncentriskaFylld#
Solfjäder# med #=intervall — fyller bildhöjden med en kvarts cirkel.
PennaLASSO
har
verkställande X C D E R resp. KlippUtTillUrklipp, KopieraTillUrklipp, Duplicera, TaBort[Erase], FlyttaUt[Remove]:
— NOTERA: Aktivera SkipWhite med tangent W för att ta
bort den vita omgivande urklippsrektangeln vid DR [och Ctrl+V] om flytlägeCopy [C].
öppnar CommanderDoit med statuspanel
Stäng/avsluta med ESCAPE eller starten Ctrl+Shift+C.
CirkelEllips [CE] har tillvalen tangentDirekt
F C resp. ritaFYLLD och ritaMedXYkryss. Grön indikator visar valt.
En separat statusrad NedreVänster ger
heltalsvärden för linjernas tangenter med tre decimaler:
— Vi behöver koll på dessa med typ maximalt
raka (fina) linjer med tangenter 2|1/2 och 3|1/3 ..;
— Displayvärdet är så utformat att vare sig
tangenen är större eller mindre än 1, visas alltid ett värde större än ett
(värdena mindre än 1 inverteras): ENDAST då det värdet visar decimalerna .000
är märklinjen ansatt för exakt matchning (Shift sätter). Svårigheten är annars
den att man kan missa på en eller flera pixels som i slutänden medför smärre
linjebrott. Här kan sådana helt elimineras.
— Jämför med linjeritningen i Paint: ingen
pilfunktion finns som kan justera positionermna exakt. Dessutom för speciellt
tjocka linjer typ tangent 2|1/2 är det ytterst svårt (omöjligt) att avgöra när
den typen gäller. Man får gissa. Det FINNS visserligen en rektangeldisplay i
PAINT nederst på statusraden som anger x;y-måtten, men det blir omständligt att
räkna ut vad som gäller om önskemålet är maximalat raka rinjer (tangensvärden i
heltal) med minimalt synliga hack.
P2: [Ännu inte T2014] Pen# ritar linjer FRITT med
MusHö kombinerat med Pilar. Linjetjockleken # kan när som helst skrivas in
valfritt under ritningen och gäller från påföljande MusHö (linjetjockleksvärdet markeras automatiskt för bekväm
nyinskrivning efter varje tangentnedtryckning|Pilar).
Färgval
genom vanliga INSERT No1&2 (Peken lyder Pilar och kan positioneras på
valfri plats=färg på bildytan), eller EditColors (NumPad5) efter InsertNo1
(Paletten F4 kan när so helst tas in): avsluta vald färg med
samma NumPad5 (eller ångra med Esc). Enter kan också
användas för Pen# (men inte för Line#
eftersom Enter också avgränsar linjesekvenser).
Uthoppspositionen lagras vid Insert No1 och återtas automatiskt vid Insert No2
eller NumPad5|EditColors.
Finns bara i en storlek = 1 pixel, välj färg
först [om annat än svart] med Tangent N, färgen under Peken [F4 tar fram en enklare RGB-palett].
Finns i tillvalen XCDER resp KlippUt till
Urklipp, Kopiera till Urklipp, Duplicera direkt som flytbild [ovan], TaBort
[Erase] och [Remove] FlyttaUt.
— Tillvalen aktiveras med respektive tangent XCDER
direkt EFTER lassoritningen — MusHögerUpp.
Cirkeln
ritas ÖvreVänster om Peken ligger utanför bildfönstret. Annars med origo i
Peken. Display visar pekpositioner.
—
c växlar
MedUtan tillagt centralkryss, f växlar MedUtan InreFyll
[extra optimering].
— Efter avslut (Esc)
ligger cirkeln som flytbild.
Tillägg 12Okt2014:
Nedre mörkgrå fältet: (med Alt+↕): = PennaInreYttre¦FÄRGVAL Ctrl+NumPad 1 2 3,
FärgUnderPek.
— Cirkelradien kan
ansättas på två olika sätt:
1. Direktinslag via #-värdet i CRL# åtföljt av Enter:
varje Enter ritar ut en cirkel med origo från markörens mittpunkt: Ta bort
panelen med Esc;
— Färgval med INSERT om
EnterDirektMetoden används då
CommanderDoitTextboxen är framme — aktuell färgUnderPeken.
VÄXLINGEN mellan tillvalslägena regleras av
Alt+Pilar
— Färgval via Ctrl+ NP|123, Radie Alt+↕, Linjebredd
Alt+←→ —
och Enter
— Färgval via INSERT endast linjefärgen, övriga senast valda;
Radie = InBoxvärdet, Linjebredd = senastVald ovan.
— Ctrl+ NumPad0 återställer till LinjeBredd=1, Linjefärg=Svart,
övriga Vitt, tilläggsradie K=0.
— Tillägsvärdet
(K) visas separat (+Radius
värde) tillsammans med totala radievärdet i StatusIndikeringen
nederstVä (Radius:
rC+K).
— Tilläggsvärdet nollställs
om HuvudradieVärdet (violetta InBoxen) ändras: värden mindre än detta ignoreras
av Alt+↕.
2. Alt+PilUpp(Öka)|Ner(Minska)
inslagsvärdets radie: Cirkeln uppdateras
kontinuerligt: Avsluta med Enter och ta bort panelen med Esc.
—
Alternativ 2 innehåller special med linjetjocklek: regleras med
Alt+PilHöger(öka)|Vänster(minska).
— Genom att KeyPreview
gäller, slipper Piltangenterna genom (Edit6KeyUp) till FormKeyDown, och som här
utnyttjats:
— Ta fram paletten (F4),
bestäm färgsättning enligt schemat i grådelen ovan:
— Färgval aktiveras Ctrl+
Numpad 1 2 3 för resp. Penna Inre Yttre:
— Färgen som väljs är alltid den som ligger under Markören: flyttas markören,
uppdateras färgvalet:
— Funktionen bryts av
Alt+PilUppNer igen och återgår till cirkelradieändring:
— Ctrl+ NumPad 0
återställer färgvalen till pennaSvart IntreYttreVit, radie=Inslagsvärdet.
— Avsluta med Enter
(avslutar CirkelÄndringsSessionen) och ta bort hela panelen med Esc.
Utöver ovan finns tre speciella tillval i
cirkelläget — Alt + K | J | F | :
Värdet anger intervallet i pixels.
Endast fönsterhöjden fylls.
Värdet anger ett gråskaleintervall i pixels [mera mot svart med
växande radie = Större bildhöjd].
Endast fönsterhöjden
fylls.
Värdet anger antalet sektorer per kvarts varv.
Endast fönsterhöjden fylls.
Ellips ¦ 5 Flytbild [se även EPSp]
Ellipsen ritas ÖvreVänster om Peken ligger utanför
bildfönstret. Annars med origo i Peken. Display visar pekpositioner.
Friritning: ta bort vertikalstrecken
och innehållet [behåll sista siffran, den anger linjetjocklek]:
ENTERno1 markerar startpunkt,
EnterNo2 avslut;
Flytta fritt eller använd piltangenter för
exakt position; Särskild display visar ellipsens LillAxel;StorAxel [L;S];
— För att få exakt mittkryss ska bägge L;S sluta på jämnt heltal 0
2 4 6 8.
— Enter No2 avslutar en
ellipsrit.
— Se mera utförligt om avancerad ellipsritning
i Ellips-parallellogrammer
Kvadrat|Rektangel ¦ 6 Flytbild
Kvadrater|Rektanglar i T2014 ritas inte med
musdragning utan på mått med Enter:
Rektanglar
ritas genom att ange x,y-värden i pixels
mellan SQR och skiljetecknet ¦. Värdet till höger anger linjetjockleken, och
den ritas här INÅT kvadraten; x;y anger alltid yttermått.
— Kvadrater ritas genom att ange endast ett
värde för x;y, som i exemplet ovan höger (”100”).
— Peken utanför fönstret ger figuren ritad
från ÖvreVänster, annars med Peken i mitten.
Allmänt
Paint — Windows 7 (2010)
Man
tycker att datorkunskaperna skulle ha utvecklats sedan 1990-talet från Windows
3.1. och Painbrush.
Inledning — HelpUs
Jämför Paint (Windows 7):
— När man aktiverar pennritningsverktyget och TROR att man kan BÖRJA rita en
sammanhängande linje EXAKT PÅ PIXELN med piltangenter, bedrar man sig. Ack och
ve.
— Det gick i PaintBrush Windows 3.1 (1994).
— Går inte i Paint Windows 7 (2010-).
Piltangenterna kopplar inte. Sten dött i Berget.
EPSp, 17Okt2014 —
Sammanställning efter utvecklingar
Avancerad
Ellipsritning med omskriven Parallellogram
och presicionsrotation
NumPad 5 CommanderDoitPanelen
med ELLIPS ¦ avsluta Enter | Esc
Enter ritar
ut den angivna basellipsen rX,rY¦Linje ex. EPS|50,50¦1
Ctrl+ KeyBoard 0 nollställer till ovan
Ctrl+ NumPad 1 2 3 : sätter
steglängden 1 5 20 för nedanstående:
Shift+Pilar reglerar
ellipsens vertikala | och horisontella — utsträckning:
— en första tangentnedtryckning utan enter ritar ut närmast föregående
parameterbestämda ellips
Ctrl+Shift+↨ ökar|minskar vald
ellipsform i omfång
Ctrl+Shift+ NumPad*=(Multiply) väljer 4 indikerade
positionsintervall för precisionen i ellipsens rotation eZ-värdet, från vänster till
höger:
10-tal 1-tal 1/10 1/100
Vald position visas under värdet med grön indikator
Ctrl+Shift+ NumPad± ökar|minskar
ellipsrotationens vinkel (eZ|Blå):
VertikaltÖvre ¯|¯ anger vinkelindex 0°:
ParallelloGraMvinkeln° anges i den orangea texten.
Ctrl+ KeyBoard 0 1 2 3 — valda
färger visas i displayrutorna:
0, Reset — nollställer alla parameterar och
börjar från Enter ovan;
1, ellipsbågens ritfärg (svart från start);
2, parallellogrammens fyllnadsfärg;
3, ellipsens fyllnadsfärg;
— BildMarkören liger hela tiden flytande med paletten F4 tillgänglig:
— Under pågående rit: Markören kan precisionsjusteras i position för att få
exakt färg under markörcentrum (aktuell färg visas alltid i statuspanelen
[överst vänster]):
— Med vald 1 2 3 är ellipsritningen tillfälligt inkopplad på aktuell färg, och
denna uppdateras löpande som markören flyttas över olika färger: för att välja
färg, återaktivera ellipsritningen med Shift+Pil [Upp|Ner] — och sedan på samma
sätt för övriga två färgområden.
c aktiverar|avaktiverar
figurkryss och vinkellinjer.
f aktiverar|avaktiverar
färgfyllningar (Ctrl + KeyBoard 1 2 3 ovan).
Enter avslutar
ritningen och lägger ut resultatet som flytbild (flytta med
Ctrl+Pilar).
— Dispalyvärdena i panelremsan
anger
E(x/y) ellipsens excentricitet (x-radien /
y-radien) med tilläggsvärden
eKy [Shift+↨] och
eKx [Shift+↔], samt tillägget för radieökningen
rE [Ctrl+Shift+↨].
Ellipsen ritas ut LeftTop om Markören ligger
utanför bildytan:
— Ellipsen förljer då fönsterkanten LeftTop
med parallellogrammens begränsningar.
— Funktionen motsvarar (med viss utökad
funktion) gamla PaintBrush i Windows 3.1 med det enklare verktyget ”snedställ”
med bara horisontella eller vertikala markörrörelser. Här används en regelrätt
rotation, tillsammans med samtliga parametrar i värden och möjlighet att
reglera rotationen i positioner NN,nn.
— Bildskärmar med bredden grovt runt 2000
pixels käver just i storleksordningen vinkelprecisioner på 1/100 grad för att
ändra positionen på en pixel längst ut. Ovanstående stödjer den upplösningen.
2014X13
EPS-parallellogrammer
Parametrar: V E M
Samband PREFIXxSIN — From PerspectiveAxes (PAX) ¦ V→Ve:
— Alla
vikningar=EllipsBildningarfrån Cirklen utmed M-axeln projicerar E=S/M för alla
dellängder CRL|EPS:
— xy|c tillhör beräkningen av
x (y beräknas separat via D°, se nedan):
E = S/M ;
förhållandet Semi/Major:
xc/M = sinVc ;
xc = MsinVc ;
xe =
E·xc ;
yc/M =
cosVc ;
yc = McosVc ;
x = √ xe2 + y2
=
√ E2·xc2
+ y2
=
√ E2(MsinVc)2 + (McosVc)2
=
√ E2M2sin2Vc
+ M2cos2Vc
=
M√ E2sin2Vc
+ cos2Vc
=
M√ E2sin2Vc
+ 1 – sin2Vc
=
M√ 1 + E2sin2Vc – sin2Vc
= M√ 1 + sin2Vc (E2 – 1) ;
tanVe = tanVc · E ;
sin2Ve = sin2(atan[tanVc·E]) ;
: Origo:
cotPAX/tanD = a0/a = 1/E = 1/tanPAX·tanD ;
tanD = E/tanPAX ;
: Övre:
tanPAX/cotV = a0/a = 1/E = tanPAX·tanV ;
tanPAX = 1/E·tanV ;
tanD = E/tanPAX = E/(1/E·tanV)
= E2· tanV ;
w = y·tan(Ve–D) ;
{R=M|PREFIXxCOS:}
x:= Round(R*Sqrt(1 + sqr(Cos(ArcTan(Tan(v)*E)))*(sqr(E)-1)));
— M är samma som Cirkelradien;
Rp är avståndet CirkelOrigo till PAX-punkten:
M/Rp = cosPAX ;
y/Rp = cos(90–V)
= sinV ;
y = RpsinV
=
MsinV/cosPAX ; efter utvecklingar:
y = M√ 1 + cos2Ve (E2 – 1)
{R=M|v=Ve|PREFIXxCOS:}
y:=
Round(R*Sqrt(1+sqr(Sin(v))*(sqr(E)-1)));
w:= Round(y*Tan(v -
ArcTan(Tan(v)*sqr(E))));
Testprogrammet (13Okt2014|P2¦DELPHI4) i PREFIXxCOS: (en Global Glob: Integer; finns med som räknare)
—————————————————————————————————————————
var
D: TPoint;
z,x,y,XS,YS,R,T,I,J,w{,F}: Integer;
v,x1,y1,E: Real;
begin
Inc(Glob);
GetCursorPos(D);
D:= Image1.ScreenToClient(D);
if not PtInRect(Image1.ClientRect,D)
then
exit;
XS:= D.X; YS:= D.Y;
with
Image1.Canvas do begin
Pen.Style:= psSolid;
Pen.Mode:= pmCopy;
Pen.Color:= 0;
end;
{EPS|Rot|PolärMetoden|OK
men »Delvis ojämn»:}
{ R:= 100;
F:= Round(360/(ArcTan(1/R)*180/pi));
for
J:= 1 to 1 do
with Image1.Canvas do begin
for I:= 0 to F do begin
v:= (360/F)*(I/180)*pi;
y1:= - R*sin(v);
x1:=(+ R*cos(v))*E;
x:= Round(XS + x1*cos(w/180*pi) -
y1*sin(w/180*pi));
y:= Round(YS + y1*cos(w/180*pi) +
x1*sin(w/180*pi));
if I=0 then MoveTo(x,y) else
LineTo(x,y);
end;
Inc(R);
end;
{EPS|Rot|RektangelMetoden|TvåCirkelHalvor¦NedreÖvre¦ritas:}
y:=0;
x:=0; z:= -1;
E:=
0.5;
R:=
100;
w:= -(Glob);
v:=
w*pi/180;
with Image1.Canvas
do
begin
for
J:= 1 to 2 do
begin
for I:=
-Round(R*E) to Round(R*E) do
begin
y1:= z*(Sqrt(Abs(sqr(R) - sqr(I/E))));
{Smärre decimala avvikelser via E
betyder avbrott utan Abs.}
x1:= I;
//if I=Round(R*E)then begin x:=I;
y:=0; end|SeSist.
x:= Round(XS + x1*cos(v) - y1*sin(v));
y:= Round(YS + y1*cos(v) + x1*sin(v));
if I=-Round(R*E)
then
MoveTo(x,y) else
LineTo(x,y);
end;
z:= 1;
end;{endForJ}
LineTo(x,y-1);
{En
pixel missas annars i slutet|if I=Round(R*E)then begin LineTo(x,y-1); end;.}
{Mittlinjen:}
x:= Round( R*Sqrt(1 + sqr(Cos(ArcTan(Tan(v)*E)))*(sqr(E)-1)) );
Pen.Color:= RGB(255,218,169);
MoveTo(XS - x,YS);
LineTo(XS + x,YS);
{D-vinkeln|TanV•E²: OffsetTop|Tan(V-D)•d:
d=R•Sqrt(1+sin²V(E²-1))¦d=y:}
y:=
Round(R*Sqrt(1+sqr(Sin(V))*(sqr(E)-1)));
{»TopXS»:}
w:= Round(y*Tan(v -
ArcTan(Tan(v)*sqr(E))));
{Top:}
MoveTo(XS-x+w,YS-y);
LineTo(XS+x+w,YS-y); //1
{Bottom:}
MoveTo(XS-x-w,YS+y);
LineTo(XS+x-w,YS+y); //3
{Left:}
MoveTo(XS-x+w,YS-y);
LineTo(XS-x-w,YS+y); //4
{Right:}
MoveTo(XS+x+w,YS-y);
LineTo(XS+x-w,YS+y); //2
{Mid:}
MoveTo(XS+w,YS-y);
LineTo(XS-w,YS+y);
{CentralVertical:}
T:= Round(R*Sqrt(1 + sqr(Sin( ArcTan(Tan(v)*E) ))*(sqr(E)-1)));
Pen.Color:= clSilver;
MoveTo(XS,YS-T+1);
LineTo(XS,YS+T);
{ActualAngle|FromVerticalTop¦Positive:}
Pen.Color:= RGB(139,220,255);
{Mot omskrivna parallellogrammen — men
den urartar typ för 90°:}
//MoveTo(XS-Round(-Tan(v)*y),YS-y);
//LineTo(XS-Round(+Tan(v)*y),YS+y);
{Bättre lösning|MotCirkelBågen:}
MoveTo(XS-Round(+Sin(v)*R),YS-Round(-Cos(v)*R));
LineTo(XS+Round(+Sin(v)*R),YS+Round(-Cos(v)*R));
end;{endWithIm1Canvas}
— På FormKeyDown finns till ovanstående Test på FormClicken verkställande
if Key=VK_SPACE then begin FormClick(Form1); exit; end;
som utför EPS-ritningen så länge SPACE hålls nedtryckt. Därtmed ges direkt visuell verifikation på att vinklar och sidor är korrekt utformade i programmet (flera småfel har följt utvecklingen tills fullgod slutfunktion, testprogrammet ovan har använts).
DELPHI4Test2011
ämnesrubriker
innehåll
Föregående:
DELPHI4Test2011.htm — huvuddokument — HJÄLPDOKUMENT FÖR
DELPHI4Test2011
referenser
Senast uppdaterade version: 2022-08-20.
*END.
Stavningskontrollerat 2011-06-08.
*
DELPHI4Test2014MANUAL ·
√
τ π ħ ε UNICODE — ofta använda tecken i
matematiskt-tekniskt-naturvetenskapliga beskrivningar
σ
ρ ν ν π τ γ λ η ≠ √ ħ
ω → ∞ ≡
Ω
Φ Ψ Σ Π Ξ Λ Θ Δ
α
β γ δ ε λ θ κ π ρ τ φ
ϕ σ ω ϖ ∏ √ ∑ ∂ ∆ ∫
≤ ≈ ≥ ˂ ˃ ˂ ˃ ← ↑
→ ∞ ↓
ϑ
ζ ξ
Pilsymboler, direkt via tangentbordet: Alt+24 ↑; Alt+25
↓; Alt+26 →; Alt+27 ←; Alt+22 ▬
Alt+23
↨ — även Alt+18 ↕; Alt+29 ↔
DELPHI4Test2011.htm
Senast uppdaterade version: 20 augusti
2022 | 05:43:16 | 2022-08-20. [GMT+1]Solar[GMT+2]Industry
Vidareutvecklat Från DELPHI 4 Test 2011 —
DELPHI4Test2011ref.htm#AnvändningSupportInstallation
T2014Reg — HUVUDDELEN AV
VERKTYGEN MAN BEHÖVER FÖR AVANCERAD DATORANVÄNDNING I TEXT OCH BILD ¦ Jan2022
*