wiris beschikt over procedures voor grafische voorstelling in twee dimensies. De belangrijkste toepassingen van deze procedures zijn de voorstelling van figuren in de vlakke meetkunde en de voorstelling van functies.
De voorstelling wordt uitgevoerd op een Tekenblad met de commando's plot, als we slechts één object wensen te tekenen, of voorstelling, wanneer we willen dat het systeem bepaalde karakteristieke aspecten tekent van het object, bijvoorbeeld de asymptoot en de kritische punten in het geval van een functie. Om tekst te schrijven in de grafiek, gebruiken we het commando noteer.
We kunnen het commando meetkunde_status raadplegen, om te ontdekken hoe we dit commando kunnen simplificeren.
een object tekenen: plot(d:Plotabel2d)
Over het algemeen tekent deze functie d op een tekenblad. Enkele van de objecten die kunnen worden getekend zijn: Punt, Rechte, Cirkel, Lijnstuk, Driehoek, Veelhoekig, Functie, Kromme of Tekstvak. Indien het argument een Lijstis, dan worden alle elementen getekend.
Merk het geval op waarin de parameter d een identificator is (variabele). Als deze als waarde een tekenbaar object heeft, dan wordt dit object getekend; als dat niet het geval is, krijgen we een foutmelding. Indien later de waarde van d wijzigt, dan wordt de tekening geupdatet om het nieuwe object te tonen. We kunnen stellen dat het tekenblad de getekende elementen onthoudt en ze aanpast als hun waarde wijzigt.
In het volgende voorbeeld kunnen we dit gedrag volgen. Indien we P definiëren als het punt (3,5) en het tekenen (eerste blok), dan verschijnt het punt (3,5) op het tekenblad. Wanneer P wordt aangepast tot (2,-1), dan wordt dit punt getekend. Merk op dat dit gebeurt zonder dat we opnieuw gebruik moeten maken van het commando plot met het punt P.
|
Een functie tekenen: commando plot
Het is mogelijk om op vele manieren aan te geven hoe een functie te tekenen. In de meeste gevallen zal het voldoende zijn om de functie die we willen tekenen aan te geven, waarna het systeem er voor zorgt het verloop en welke variabelen die de rol spelen van x-as en y-as te kiezen.
De volgende voorbeelden laten zien hoe de variabel en de verloop worden aangeven.
Parametrische krommen
Om parametrische krommen te tekenen, is het altijd nodig om de variabel, die als parameter werkt, en zijn verloop aan te geven.
|
opties plot: Het laatste argument van het commando plot kan optioneel een Lijst zijn van opties. De opties laten toe om het uitzicht van figuren (kleur, lijndikte, enz.) te bepalen. De werking van sommige opties of de kwaliteit ervan, hangt af van de versie van Java™ (JVM) die op de computer geïnstalleerd is. Met Java™ versie 1.3 (Java 2) of recentere versies kunnen we in het tweede voorbeeld rechten met verschillende lijndiktes weergeven. Download de meest recente Java-versie.
We geven al de waarden in van de opties, gescheiden door komma's en volgens het formaat 'naam_optie=waarde_optie'; bijvoorbeeld, kleur=groen.
De voornaamste optie van het commando plot zijn: kleur Bepaalt de kleur waarin de figuren op de tabel getekend worden.
Mogelijke waarden
: lijsten van drie gehele getallen tussen 0 en 255 met de vorm '{r,g,b}', waarbij r, g, b overeenstemmen met de hoeveelheid rood (red), groen (green) en blauw (blue) die de kleur definiëren. Om hier gemakkelijker mee te werken, volgen hier enkele kleurendefinities: zwart, wit, rood, groen, blauw, cyaan, magenta, geel, bruin, oranje, roze, grijs, donkergrijs, lichtgrijs en de volledige lijst met html kleuren.
Standaardwaarde
: zwart
grens Geeft aan of de omtrek van een gesloten figuur getekend moet worden.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: waar
vul Geeft aan of de figuur opgevuld wordt, in het geval van een gesloten figuur.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: vals
vulkleur In het geval van een gesloten figuur en als de waarde van vul waar is, geeft dit commando de kleur aan waarmee de figuur wordt opgevuld.
Mogelijke waarden
: een Kleur en "automatisch"; indien we deze tweede waarde van de optie kiezen, wordt de figuur opgevuld met dezelfde kleur als de optie kleur.
Standaardwaarde
: "automatisch"
zichtbaar Geeft aan of het element zichtbaar is of niet.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: waar
mobile Indien het te tekenen object niet op statische wijze gedefinieerd is, geeft dit commando aan of het al dan niet in de ruimte kan bewegen.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: waar
bereken Geeft aan of het element geëvalueerd wordt op het ogenblik waarop de tekening gemaakt wordt of niet.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: vals
fixed_dimensions Geeft aan of, bij het wijzigen van de maten van het tekenblad, de objecten al dan niet opnieuw op het vlak moeten worden geplaatst. Standaard worden ze opnieuw geplaatst.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: vals
puntgrootte Bepaalt de grootte waarmee punten getekend worden op het tekenblad.
Mogelijke waarden
: elk positief Reëel getal.
Standaardwaarde
: 5
lijndikte Geeft de lijndikte weer waarmee rechten, lijnstukken, functiegrafieken enz. worden getekend op het tekenblad.
Mogelijke waarden
: elk positief Reëel getal.
Standaardwaarde
: 1
toon_label Geeft aan of het label van de figuur moet worden weergegeven op de grafiek.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: vals
label Geeft aan welk label bij de figuur moet worden weergegeven.
Mogelijke waarden
: een willekeurig object en "automatisch"; wanneer we deze tweede waarde van de optie kiezen, geeft het label de naam van de figuur aan.
Standaardwaarde
: "automatisch"
label_font Geeft aan welk lettertype wordt gebruikt voor de labels van het tekenblad.
Mogelijke waarden
: een willekeurig object van het type Letter.
Standaardwaarde
: {vet=vals,cursief=vals,naam="SansSerif",size=12}
naam Indien het commando plot de naam van het object dat het moet tekenen niet kent, moet je de naam opgeven. Dit is enkel van toepassing wanneer het één enkel element betreft en niet een lijst.
Mogelijke waarden
: een willekeurig object van het type String.
Standaardwaarde
: nihil
seed_name Indien het commando de naam van het object dat het moet tekenen plot niet kent , is de naam van deze figuur de waarde van deze optie gekoppeld aan een getal.
Mogelijke waarden
: een willekeurig object van het type String.
Standaardwaarde
: nihil
|
voorstelling: voorstelling(...)
Deze functie tekent de objecten en geeft ook relevante informatie weer. Zo houdt de voorstelling van functies in dat de grafiek ervan getekend wordt alsook de belangrijkste elementen ervan, zoals de singuliere punten, asymptoten, en andere lokale maxima. Anvaardt dezelfde argumenten toe als de functie plot.
Dit commando wordt bepaald door objecten van het type: Functie, Cirkel en Kegelsnede
( Hyperbool, Ellips en Parabool)
Indien het commando toegepast wordt op een voorwerp waarvoor wiris geen bijzonder element beschouwt of niet weet hoe dit te berekenen, is het commando equivalent aan plot.
|
noteer: noteer(d,P:Punt)
Met deze functie kan men d schrijven in het punt P. Gewoonlijk is d van het type String , ook al kan dit een willekeurig object zijn. Over het algemeen kunnen we zeggen dat het commando noteer een snelle wijze is om objecten te tekenen van het type Tekstvak.
|
opties noteer: Het laatste argument van het commando noteer kan optioneel een Lijst zijn van opties. De opties die we kunnen doorgeven aan het commando noteer zijn zowel deze van het commando tekstvak als deze van plot (we kunnen ze hierzien), aangezien noteer(t,d,P,O) equivalent is met plot(t,tekstvak(d,P,O),O), waarbij t een Plotter, O een Lijst met opties is en d en P zijn zoals beschreven in de vorige paragraaf.
De voornaamste optie van het commando tekstvak zijn: achtergrond Geeft aan of de achtergrond van het voorgestelde object al dan niet moet worden opgevuld.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: vals
achtergrondkleur Geeft, in het geval dat de waarde van achtergrond waar is, de kleur aan waarmee de achtergrond van het object dat wordt voorgesteld, wordt opgevuld.
Mogelijke waarden
: elke Kleur, in numeriek formaat {r,g,b} ofwel, indien gedefinieerd, met de naam.
Standaardwaarde
: {255,255,255} (wit).
grens Geeft aan of al dan niet een rand moet worden toegevoegd aan het voorwerp dat voorgesteld wordt en bepaalt in het eerste geval de dikte die deze zal hebben.
Mogelijke waarden
: elk positief Geheel getal dat niet negatief is.
Standaardwaarde
: 0
grenskleur Geeft, in het geval dat de waarde van grens een positief Geheel getal is, de kleur aan waarmee de rand moet worden getekend.
Mogelijke waarden
: elke Kleur, in numeriek formaat {r,g,b} ofwel, indien gedefinieerd, met de naam.
Standaardwaarde
: {0,0,0} (zwart).
horizontale_positie Geeft de horizontale positie aan van de Tekstvak , met als referentie het gespecificeerde punt.
Mogelijke waarden
: "links", "middelpunt" en "rechts".
Standaardwaarde
: "rechts"
verticale_positie Geeft de verticale positie aan van de Tekstvak , met als referentie het gespecificeerde punt.
Mogelijke waarden
: "top", "middelpunt", "grondlijn" en "onderaan".
Standaardwaarde
: "grondlijn"
max_breedte Geeft de maximumbreedte aan van de Tekstvak. Wanneer de tekst deze overschrijdt, springt deze naar de volgende lijn.
Mogelijke waarden
: elk positief Reëel getal.
Standaardwaarde
: ∞ (oneindig).
letter Geeft de letterstijl weer voor het schrijven van tekst op het tekenblad.
Mogelijke waarden
: een willekeurig object van het type Letter.
Standaardwaarde
: {vet=vals,cursief=vals,naam="SansSerif",size=12}
lettertype_vet Geeft aan of de tekst op het tekenblad gebruik maakt van vet gedrukte tekst.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: vals
cursief_lettertype Geeft aan of de tekst gebruik maakt van cursief.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: vals
letternaam Geeft de naam van het gebruikte lettertype aan.
Mogelijke waarden
: "Serif", "SansSerif" en "Monospaced".
Standaardwaarde
: "SansSerif"
lettergrootte Geeft de maat van het lettertype van de tekst aan.
Mogelijke waarden
: elk positief Geheel getal.
Standaardwaarde
: 12
|
De commando's plot, voorstelling of noteer kunnen optioneel als eerste argument het tekenblad krijgen waarin we willen dat de weergave gebeurt. Indien het eerste argument geen tekenblad is, stelt wiris één van de vooraf bepaalde kenmerken voor.
Elk rekenblok heeft standaard een eigen tekenblad en kan zo veel tekenbladen hebben als we wensen. De commando's om een tekenblad aan te maken, zijn plotter() of plotter(P,x,y); met deze laatste kan een tekenblad gecreëerd worden met het midden in het punt P, breedte x en hoogte y.
Standaard wordt er in het gecreëerde tekenblad een assenkruis en een oranje rooster weergegeven. Wanneer we niet willen dat deze elementen verschijnen, moeten we respectievelijk de volgende commando's uitvoeren: toon_as(vals) en toon_rooster(vals), alvorens het tekenblad te creëren en te beginnen tekenen. Wanneer het rooster zichtbaar is in een tekenblad, kunnen de punten zich enkel over de snijpunten van dit rooster bewegen. Eens het tekenblad aangemaakt is, kunnen we het assenkruis en het rooster respectievelijk controleren met de icoontjes of .
In het volgende voorbeeld wordt een tekenblad gecreëerd waarbij, in tegenstelling tot de standaardsituatie, geen assenkruis of rooster zichtbaar is:
De beschrijving van de icoontjes van de tekenbladen ( , , , , enz. ) , vind je in het deel Menu's, icoontjes....
opties plotter: De voornaamste optie van het commando plotter zijn: middelpunt Geeft het punt in het centrum van het tekenblad weer.
Mogelijke waarden
: elk Punt.
Standaardwaarde
: punt(0,0)
hoogte Geeft de hoogte van het tekenblad weer.
Mogelijke waarden
: elk positief Reëel getal.
Standaardwaarde
: 21
breedte Geeft de breedte van het tekenblad weer.
Mogelijke waarden
: elk positief Reëel getal.
Standaardwaarde
: 21
zichtbaar Geeft aan of het element zichtbaar is of niet.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: waar
achtergrondkleur Geeft de achtergrondkleur van het tekenblad weer.
Mogelijke waarden
: elke Kleur, in numeriek formaat {r,g,b} ofwel, indien gedefinieerd, met de naam.
Standaardwaarde
: {255,255,240} (crèmekleurig).
verhouding Geeft de verhouding tussen de hoogte en de breedte van het tekenblad weer.
Mogelijke waarden
: elk positief Reëel getal.
Standaardwaarde
: 1
informatie Geeft aan welke informatie kan worden getoond wanneer we de muis over een figuur glijden. Deze informatie kan worden gewijzigd eens de tekening op het scherm staat, met de icoontjes , en van de werkbalk van het tekenblad. Meer informatie in label of toon_label.
Mogelijke waarden
: "geen", "naam", "definitie" en "waarde".
Standaardwaarde
: "naam"
. Venstereigenschappen
vensterhoogte Geeft de vensterhoogte aan in pixels.
Mogelijke waarden
: elk positief Geheel getal.
Standaardwaarde
: 450
vensterbreedte Geeft de vensterbreedte aan in pixels.
Mogelijke waarden
: elk positief Geheel getal.
Standaardwaarde
: 450
vensterverhouding Geeft de gewenste verhouding aan tussen de hoogte en breedte van het tekenvenster.
Mogelijke waarden
: elk positief Reëel getal.
Standaardwaarde
: 1
· Eigenschappen van het assenkruis
toon_as Geeft aan of het assenkruis al dan niet wordt weergegeven op het tekenblad.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: waar
askleur Geeft, in het geval dat de waarde van toon_as waar is, de kleur aan waarmee de assen worden getekend.
Mogelijke waarden
: elke Kleur, in numeriek formaat {r,g,b} ofwel, indien gedefinieerd, met de naam.
Standaardwaarde
: {150,150,255} (lichtblauw).
axis_style Geeft aan hoe het assenkruis worden voorgesteld, ofwel als twee loodlijnen ofwel als een paar pijlen die loodrecht op elkaar staan. In het tweede geval kan men de abscissen-as bovendien identificeren door x of X en de ordenaten-as door y of Y.
Mogelijke waarden
: "geen", "pijl", "pijl_xy" en "pijl_XY".
Standaardwaarde
: "geen"
lettertype_as Geeft het lettertype aan van de tekst en de waarden die bij de assen horen.
Mogelijke waarden
: een willekeurig object van het type Letter.
Standaardwaarde
: {vet=vals,cursief=vals,naam="SansSerif",size=10}
as_label Geeft een naam aan het assenkruis. Het eerste element van de lijst geeft een naam aan de abscissen-as, terwijl het tweede element een naam geeft aan de ordenaten-as.
Mogelijke waarden
: een willekeurige Lijst van twee componenten.
Standaardwaarde
: {,} (een Lege_lijst met twee elementen).
· Roostereigenschappen
toon_rooster Geeft aan of in het venster al dan niet een kubus wordt weergegeven. Als er een rooster wordt weergegeven, dan kunnen de getekende punten enkel over de snijpunten van dit rooster bewegen; als er geen rooster getekend wordt, dan kunnen de punten vrij bewegen.
Mogelijke waarden
: waar en vals.
Standaardwaarde
: waar
roosterkleur Geeft de kleur weer waarin het rooster wordt weergegeven.
Mogelijke waarden
: elke Kleur , in numeriek formaat {r,g,b} ofwel, indien gedefinieerd, met de naam.
Standaardwaarde
: {255,200,100} (lichtoranje).
|
Het is mogelijk een aantal objecten te tekenen met behulp van meetkundige relaties evenzo om te zien dat, als men sommige beweegt, die relaties worden behouden. Daarom moeten de objecten die afhankelijk zijn van andere worden aangegeven met het symbool :=.
Nadat u het volgende voorbeeld heeft berekend, probeer het punt P te verplaatsen.
schuifknop: commando schuifknop
We zullen het commando schuifknop gebruiken en het variabel met := aangeven om de reële cijfers te kunnen kiezen op een interactieve manier.
Dit commando krijgt als argumenten een verloop en, optioneel, een beginwaarde.
|
beperking: commando beperking
In interactieve meetkunde is het soms nodig om een punt te beperken tot een concreet figuur. Dit commando krijgt als eerste argument een geometrisch object en als tweede argument de waarde van het beginpunt.
|
|