1. ASUS A43S/ Windows 7 x64
2. Kinect SDK 1.6 + Example SkeletonBasic-WPF
3. Eyeball display and motion WPF class
4. Eyeball rotate angle = headJoint.Position.X * 80
if (skel.TrackingState == SkeletonTrackingState.Tracked)
{
Joint headJoint = skel.Joints[JointType.Head];
SkeletonPoint headPoint = headJoint.Position;
string message = string.Format("Head: X:{0:0.0} Y:{1:0.0} Z:{2:0.0}", headPoint.X,
headPoint.Y, headPoint.Z);
EyeBall.RoLR.Angle = headJoint.Position.X * 80;
}
5. 程式下載
6. Storyboard.Stop may not function when the Storyboard.Begin(this, w/o true).
if (IsAnimation)
{
IsAnimation = false;
this.ST.Stop(this);
}
else
{
IsAnimation = true;
ST.Begin(this, true);
}
7. Revise version
7.1 Alt+T : Start/Stop to generate a random angle with 500 ms period.
7.2 Alt+A: Start/Stop Animation from 35 to 105.
8. 程式下載。
2013年4月9日 星期二
2013年4月7日 星期日
有視嗎,視窗變形
奕璇的論文找到一個實例應用,調整一下
1. 考慮投影機為延伸或鏡射,虛擬視窗位置可調。
2. 虛擬螢幕控制點計14個(7組)
2-1 1~7 數字鍵與Mouse Wheel控制7組控制軸y方向增減。
2-2 2(Q),4(E),6(T) 雙鍵與Mouse Wheel控制3組控制軸x方向增減。
3. s鍵與Mouse Wheel控制虛擬螢幕尺寸。
4. r鍵與Mouse Wheel控制虛擬螢幕旋轉。
5. x鍵與Mouse Wheel控制虛擬螢幕x方向平移。
6. y鍵與Mouse Wheel控制虛擬螢幕y方向平移。
7. z鍵與Mouse Wheel控制虛擬螢幕z方向平移。
8. 程式下載
9. Revise version for improving distortion. (2013-4-18)
1. 考慮投影機為延伸或鏡射,虛擬視窗位置可調。
2. 虛擬螢幕控制點計14個(7組)
2-1 1~7 數字鍵與Mouse Wheel控制7組控制軸y方向增減。
2-2 2(Q),4(E),6(T) 雙鍵與Mouse Wheel控制3組控制軸x方向增減。
3. s鍵與Mouse Wheel控制虛擬螢幕尺寸。
4. r鍵與Mouse Wheel控制虛擬螢幕旋轉。
5. x鍵與Mouse Wheel控制虛擬螢幕x方向平移。
6. y鍵與Mouse Wheel控制虛擬螢幕y方向平移。
7. z鍵與Mouse Wheel控制虛擬螢幕z方向平移。
8. 程式下載
9. Revise version for improving distortion. (2013-4-18)
10. 程式下載
11. Revise version for auto-replay and open file dialog for changing video file (2013-4-18)
12. 程式下載(V3)
13. Revise version for Quadrilateral (2013-5-15)
14. 程式下載(V4)
13. Revise version for delay re-start (2013-5-15)
14. 程式下載(V5)
15. Revise version for 16:9 without margins (2013-5-16)
執行後請匯入座標
可以用記事本修改PositionData,txt, 前三組數據分別是
延伸視窗位置: 0,1024 (主螢幕1024,768)
視窗尺寸:1280,768
虛擬螢幕尺寸:1280,768
16. 程式下載(V6)
2013年3月29日 星期五
IIS not allows rdp extention
ref : http://serverfault.com/questions/335982/iis-not-allowing-me-to-server-files-with-rdp-extension
It can be solved by add
File name Extension: .rdp
MIME type: application/rdp
The Msvm_VirtualSystemManagementService object was not found
1. Server 2008 R2 SP1, Hyper-V in AD can't connect to VM host
2. Download KB950050:Windows Server 2008 x64 Edition 的 Hyper-V 更新
http://www.microsoft.com/zh-tw/download/details.aspx?id=18567
3. OK!
2. Download KB950050:Windows Server 2008 x64 Edition 的 Hyper-V 更新
http://www.microsoft.com/zh-tw/download/details.aspx?id=18567
3. OK!
2013年3月26日 星期二
Screen Capture By Thread
1. OS: Windows 7 x64
2. Tools: VS2010, Expression 4.0
3. Prepare a class for capturing scrren and save to outputpath
class BkScnCap
{
ScreenCaptureJob job;
public BkScnCap()
{
job = new ScreenCaptureJob();
}
public void Record()
{
System.Drawing.Size monitorSize = SystemInformation.PrimaryMonitorSize;
System.Drawing.Rectangle capRect = new System.Drawing.Rectangle(0, 0, monitorSize.Width, monitorSize.Height);
job.CaptureRectangle = capRect;
job.OutputPath = @"E:\output\ScreenCap";
job.Start();
}
public void StopRecord()
{
job.Stop();
}
}
4. Make backgroud thread method in constructor, Click to start this thread and click the stop to end it.
public MainWindow()
{
InitializeComponent();
oBkScnCap = new BkScnCap();
oThread = new System.Threading.Thread(new System.Threading.ThreadStart(oBkScnCap.Record));
}
System.Threading.Thread oThread;
BkScnCap oBkScnCap;
private void 儲存影片_Click(object sender, RoutedEventArgs e)
{
oThread.Start();
}
private void 停止影片擷取_Click(object sender, RoutedEventArgs e)
{
oBkScnCap.StopRecord();
}
5. Screen resolution issue
2. Tools: VS2010, Expression 4.0
3. Prepare a class for capturing scrren and save to outputpath
class BkScnCap
{
ScreenCaptureJob job;
public BkScnCap()
{
job = new ScreenCaptureJob();
}
public void Record()
{
System.Drawing.Size monitorSize = SystemInformation.PrimaryMonitorSize;
System.Drawing.Rectangle capRect = new System.Drawing.Rectangle(0, 0, monitorSize.Width, monitorSize.Height);
job.CaptureRectangle = capRect;
job.OutputPath = @"E:\output\ScreenCap";
job.Start();
}
public void StopRecord()
{
job.Stop();
}
}
4. Make backgroud thread method in constructor, Click to start this thread and click the stop to end it.
public MainWindow()
{
InitializeComponent();
oBkScnCap = new BkScnCap();
oThread = new System.Threading.Thread(new System.Threading.ThreadStart(oBkScnCap.Record));
}
System.Threading.Thread oThread;
BkScnCap oBkScnCap;
private void 儲存影片_Click(object sender, RoutedEventArgs e)
{
oThread.Start();
}
private void 停止影片擷取_Click(object sender, RoutedEventArgs e)
{
oBkScnCap.StopRecord();
}
5. Screen resolution issue
2013年3月19日 星期二
明明就很容易Rotate Animation
1. Windows 7 x64
2. VS 2010
3. Storyboard.TargetProperty="Angle" 就可以了。
<Window x:Class="Ro2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Ellipse Width="100" Height="50" Fill="Red">
<Ellipse.RenderTransform>
<RotateTransform x:Name="Ro"/>
</Ellipse.RenderTransform>
<Ellipse.Triggers>
<EventTrigger RoutedEvent="Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="Ro"
Storyboard.TargetProperty="Angle"
From="0" To="360" Duration="0:0:1"
RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Ellipse.Triggers>
</Ellipse>
</Grid>
</Window>
2. VS 2010
3. Storyboard.TargetProperty="Angle" 就可以了。
<Window x:Class="Ro2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<Ellipse Width="100" Height="50" Fill="Red">
<Ellipse.RenderTransform>
<RotateTransform x:Name="Ro"/>
</Ellipse.RenderTransform>
<Ellipse.Triggers>
<EventTrigger RoutedEvent="Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="Ro"
Storyboard.TargetProperty="Angle"
From="0" To="360" Duration="0:0:1"
RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</Ellipse.Triggers>
</Ellipse>
</Grid>
</Window>
2013年3月17日 星期日
Broadcasting Screen
1. Hardware A43S
2. OS: Windows 7 x 64
3. Tools: VS 2010, Expression 4 Pro
4. Download Expression SP2 http://www.microsoft.com/zh-tw/download/details.aspx?id=27870
Ref: http://stackoverflow.com/questions/6173914/realtime-stream-from-screencapture-with-microsoft-expression-encoder
5. Notes:
N1. SP1 or SP2 download and upgrade. Restart was required.
N2. Capture screen and then broadcasting into internet.
6. Coding:
LiveJob job = new LiveJob(); // Create Broadcasting object
Collection<EncoderDevice> devices = EncoderDevices.FindDevices(EncoderDeviceType.Video);
EncoderDevice device=null;
for (int i=0; i< devices.Count; i++)
if (devices[i].Name == "Screen Capture Source") device = devices[i]; // Select Screen Capture
//Source as the input device
if (device != null)
{
LiveDeviceSource source = job.AddDeviceSource(device, null);
source.ScreenCaptureSourceProperties = new ScreenCaptureSourceProperties
{
CaptureCursor = true,
CaptureLargeCursor = false,
FrameRate = 6,
CaptureLayeredWindow = true,
Height = 600,
Width = 800,
Left = 0,
Top = 0,
};
job.ActivateSource(source);
// Finds and applys a smooth streaming preset
job.ApplyPreset(LivePresets.VC1256kDSL16x9);
// Sets up variable for fomat data
var format = new PullBroadcastPublishFormat { BroadcastPort = 8080 };
job.PublishFormats.Add(format);
var data = job.BufferWindowSize;
job.StartEncoding();
Console.Write("Press Enter then to stop the broadcasting.");
Console.ReadLine();
job.StopEncoding();
}
else
{
Console.WriteLine("Can't find Screen Capture Source.");
}
}
7. Download
2. OS: Windows 7 x 64
3. Tools: VS 2010, Expression 4 Pro
4. Download Expression SP2 http://www.microsoft.com/zh-tw/download/details.aspx?id=27870
Ref: http://stackoverflow.com/questions/6173914/realtime-stream-from-screencapture-with-microsoft-expression-encoder
5. Notes:
N1. SP1 or SP2 download and upgrade. Restart was required.
N2. Capture screen and then broadcasting into internet.
6. Coding:
LiveJob job = new LiveJob(); // Create Broadcasting object
Collection<EncoderDevice> devices = EncoderDevices.FindDevices(EncoderDeviceType.Video);
EncoderDevice device=null;
for (int i=0; i< devices.Count; i++)
if (devices[i].Name == "Screen Capture Source") device = devices[i]; // Select Screen Capture
//Source as the input device
if (device != null)
{
LiveDeviceSource source = job.AddDeviceSource(device, null);
source.ScreenCaptureSourceProperties = new ScreenCaptureSourceProperties
{
CaptureCursor = true,
CaptureLargeCursor = false,
FrameRate = 6,
CaptureLayeredWindow = true,
Height = 600,
Width = 800,
Left = 0,
Top = 0,
};
job.ActivateSource(source);
// Finds and applys a smooth streaming preset
job.ApplyPreset(LivePresets.VC1256kDSL16x9);
// Sets up variable for fomat data
var format = new PullBroadcastPublishFormat { BroadcastPort = 8080 };
job.PublishFormats.Add(format);
var data = job.BufferWindowSize;
job.StartEncoding();
Console.Write("Press Enter then to stop the broadcasting.");
Console.ReadLine();
job.StopEncoding();
}
else
{
Console.WriteLine("Can't find Screen Capture Source.");
}
}
7. Download
訂閱:
文章 (Atom)







