Sigma
SigmaScript generelle funktioner
Avancerede emner > SigmaScript > SigmaScript funktioner og objekter > SigmaScript generelle funktioner

Glossary Item Box

0SigmaScript funktioner til bearbejdelse af SigmaScript datatyperne Tal, Tekster og Dato/tid. Disse funktioner kan kaldes overalt i SigmaScript, og skal ikke kaldes på et bestemt objekt eller klasse.

 

Funktion Beskrivelse Eksempel
Tal
Sin(Number) Returnerer sinus til Number (angivet som radianer).  
Cos(Number) Returnerer cosinus til Number (angivet som radianer).  
Tan(Number) Returnerer tangens til Number (angivet som radianer).  
ArcSin(Number) Returnerer arcus sinus til Number (angivet som radianer).  
ArcCos(Number) Returnerer arcus cosinus til Number (angivet som radianer).  
ArcTan(Number) Returnerer arcus tangent til Number (angivet som radianer).  
CoTan(Number) Returnerer cotangens til Number (angivet som radianer).  
Ln(Number) Returnerer den naturlige logoritme til Number.  
Log(Number) Returnerer 10-tals logoritmen til Number.  
Exp(Number) Returnerer e opløftet i potentsen Number.  
Abs(Number) Returnerer den absolutte værdi af Number.  
Sqrt(Number) Returnerer kvadratroden af Number.  
Floor(Number) Returnerer runder Number ned til nærmeste heltal.  
Ceil(Number) Returnerer runder Number op til nærmeste heltal.  
Round(Number) Returnerer afrunder Number til nærmeste heltal.  
Frac(Number) Returnerer den del af Number som kommer efter komma.  
Hypot(Number1, Number2) Returnerer hypotenusen til et retvinklet trekant med siderne Number1 og Number2.  
Min(Number1, Number2) Returnerer det mindste af talene Number1 og Number2.  
Max(Number1, Number2) Returnerer det største af talene Number1 og Number2.  
ZeroIfNegative(Number) Returnerer Number eller 0 hvis Number er mindre end 0.  
Lerp(Number1, Number2, Number3) Returnerer den linære interpolation af Number1 og Number2 for Number3.  
Clamp(Min, Max, Value) Returnerer Value eller Min hvis Value er mindre end Min eller Max hvis value er større end Max.  
IsBetween(IntervalLow, IntervalHigh, Value) Returnerer 1 hvis Value er mellem IntervalLow og IntervalHigh, eller 0.  
Tekster
Copy(Text, Fra, Til) Returnerer en del af Text, fra position Fra til position Til.  
Delete(Text, Fra, Til) Returnerer en del af Text, med tegn slettet fra position Fra til position Til.  
Insert(Text1, Text2, Position) Returnerer Text1 indsat i Text2 på position Position.  
Pos(Text1, Text2) Returnerer placeringen af Text1 i Text2, såfremt den findes. Hvis den ikke findes returneres 0.  
Length(Text) Returnerer antallet af tegn i Text.  
UpperCase(Text) Returnerer Text med store bogstaver.  
LowerCase(Text) Returnerer Text med små bogstaver.  
StrToFloat(Text) Returnerer talværdien af en Text såfremt det er muligt. Der forudsættes at den lokale decimaladskiller er anvendt.  
StrToFloatInternational(Text) Returnerer talværdien af en Text såfremt det er muligt. Der forudsættes at punktum (.) er anvendt som decimaladskiller.  
FormatFloat(Format, Number)

Returnerer Number som en formateret tekst. Følgende kan benyttes til formateringen:

  • 0 Viser ciffer hvis det findes, ellers 0
  • # Viser ciffer hvis det findes
  • , Viser tusindtalsadskiller
  • . Viser decimaladskiller
  • E+ Gennemtvunget eksponentvisning
  • E- Tilladt eksponentvisning
  • ; Adskiller af +ve og -ve og nul værdier 

UI script:

value := GetFloat("Enter value:");
AddText("You entered: " + FormatFloat("0.00", value));

TableLookupAsString() til at hente tekst-værdier fra en CSV fil
 
FormatDateTimeInternational() Gemmer datoværdier i sprog-uafhængigt format
dateAsString := "02-09-2010";
date := StrToDateTime(dateAsString);
ShowText("StrToDateTime test:", FormatDateTime("dddd", date) + " den " + FormatDateTime("d. mmmm yyyy", date));
StrToDateTimeInternational()
Commands.UpdateFromLibrary() Kør "Opdater fra bibliotek" på den aktuelle kalkulation
SetLabelWidth(0);
SetControlWidth(150);

ShowButton("", "Show 'Update from library'");
if ControlActivated() then
  Commands.ShowUpdateFromLibrary();

ShowButton("", "Run 'Update from library'");
if ControlActivated() then
  Commands.UpdateFromLibrary("C:\ProgramData\CodeGroup\Sigma\Shared\Data\default.ComponentUpdaterConfig.xml");

SetControlWidth(250);
ShowButton("", "Run 'Update from library' using another lib");
if ControlActivated() then
  Commands.UpdateFromLibrary("#Sigma_DataPath#\default.ComponentUpdaterConfig.xml", "#Sigma_UserLibPath#\Mine bygningsdele.sli");
Dato/tid
Now() Returnerer aktuel dato og tid. today := Now();
AddDays(DateTime, Number) Returnerer dato/tid hvor antal dage i Number er lagt til DateTime. Number kan indeholde decimaler og være negativ. yesterday := AddDays(Now(), -1);
DaysDiff(DateTime1, DateTime2) Returnerer antallet af dage mellem DateTime1 og DateTime2. daysBetween := (endDate, startDate);
FormatDateTime(Format, DateTime)

Returnerer DateTime formateret med den skabelon som er angivet i Tekst:

  • d Dag uden foranstillet nul
  • dd Dag med foranstillet nul
  • ddd Ugedag i kort format
  • dddd Ugedag i langt format
  • m Måned uden foranstillet nul
  • mm Måned med foranstillet nul
  • mmm Måned som tekst i kort format
  • mmmm Måned som tekst i langt format
  • yy År i kort form med to tal
  • yyyy År i lang form med fire tal
  • h Timer uden foranstillet nul
  • hh Timer med foranstillet nul
  • n Minutter uden foranstillet nul
  • nn Minutter med foranstillet nul
  • s Sekunder uden foranstillet nul
  • ss Sekunder med foranstillet nul
  • z Millisekunder uden foranstillet nul
  • zzz Millisekunder med tre cifre
AddText(FormatDateTime("dddd d. mmmm yyyy", Now()));
StrToDateTime(Text) Konverter en tekst til et tal. Teksten skal have formattet dag - måned - år, f.eks. 15-06-2010. minDato := StrToDateTime("15-06-2010");
minDato := GetDate("Dato:", minDato);
©2011. All Rights Reserved.