pondělí 22. května 2017

OpenSCAD - tahák

Často používané proměnné
Width = 50; //x
Height = 50; //y
Thiknes = 1.5; //z
ScrewHole=3;
Pitch=10;
EmentalHole=4;

cube
cube([BoxWidth, BoxHeight, BoxDepth]);

cylinder
cylinder(h=2,d=7.5,center=true);
cylinder(16,d=3,true,$fn=60);

translate
translate([-50,85,1])

rotate
rotate([90,0,270])

difference()
union()
intersection()

for
for (y =[0:Height/Pitch])
                translate([-Width/2+x*Pitch+Pitch/2, -Height/2+y*Pitch+Pitch/2, 0])

                cylinder(d=EmentalHole,h=Thiknes,center=true,$fn=10);

module
module corner(x,y,z,r){
...
}
corner(10,10,10,90);

neděle 9. dubna 2017

WPF - lokalizace

Překlady řetězců ve WPF aplikaci do několika různých jazyků.

<Window
....
xmlns:translate="clr-namespace:MyApp.Translate;assembly=MyApp.Translate"
...
>

Zdroj:
https://www.tutorialspoint.com/wpf/wpf_localization.htm

středa 5. dubna 2017

Open SCAD - Parametrická krabička

Postup:
Vytvoříme si několik proměnných, které budeme u krabičky chtít měnit. Výšku, šířku, hloubku a tloušťku stěny.

V prvním kroku si vytvoříme pomocí funkce cube kvádr o zadaných rozměrech.
Následně vytvoříme kvádr, který bude o tloušťku stěny menší. Ten od původního odečteme ve funkci difference. Pokud necháme vše centrovat na počátek souřadnic stačí když menší kvádr posuneme jen o tloušťku stěny výš aby nám vzniklo dno krabičky.
Zdrojový kód pak může vypadat takto:

Width=70;
Height=50;
Depth=40;
WallThiknes=1.5;
difference(){
cube([Width, Height, Depth], center=true);
translate([0, 0, WallThiknes])
    cube([Width-2*WallThiknes, Height-2*WallThiknes, Depth-WallThiknes], center=true);
}


Pokud nebudeme používat centrování, pak musíme posunout vnitřní kvádr ve všech směrech, jak ukazuje zdrojový kód níže.

Width=70;
Height=50;
Depth=40;
WallThiknes=1.5; 
difference(){
cube([Width,Height,Depth]);
translate([WallThiknes, WallThiknes, WallThiknes])
    cube([Width-2*WallThiknes, Height-2*WallThiknes, Depth-WallThiknes]);
}

Zdroje:
http://www.openscad.org/ 

úterý 17. ledna 2017

Stimulsoft Reporting

ConnectionString

Bez hesla

Data Source=.\sqlExpress;Initial Catalog=AdventureWorks.EN;Integrated Security=True;Persist Security Info=True

S heslem 

Data Source=.\sqlexpress;Initial Catalog=AdventureWorks;Integrated Security=False;Persist Security Info=True;User ID=demo;Password=demo
Důležitý parametr je Persist Security Info=True bez něj se reporting k databázi nepřipojil.

Změna ConnextionString v XML

V XML šabloně je potřeba:
1. Najít všechny elementy s atributem type="Stimulsoft.Report.Dictionary.StiSqlDatabase"
2. Podle Alias najít ConnectionString který chceme upravit
3. Nahradit hodnotu tagu ConnectionString

Doporučení:Neměňte název Tagu pod rodičovským tagem Databases ani hodnotu tagu Name. Raději použijte Alias. Podle názvu se totiž na něj odkazuje tag DataSources.

 <DataSources isList="true" count="1">
      <Production_Product2 Ref="3" type="Stimulsoft.Report.Dictionary.StiSqlSource" isKey="true">
        <Alias>Production.Product2</Alias>
        <Columns isList="true" count="25">
          <value>ProductID,System.Int32</value>
         ...
        </Columns>
        <CommandTimeout>30</CommandTimeout>
        <Dictionary isRef="1" />
        <Name>Production.Product2</Name>        <NameInSource>sqlDataSource1</NameInSource>
    </Production_Product2>
 </DataSources>

Zašifrovaný ConnectionString

Pokud nechcete používat šifrovaný ConnectionString tak stačí v XML šabloně nahradit tag ConnectionStringEncrypted za ConnectionString