2019年1月14日 星期一

Phython 學習筆記 - Windows中安裝Matplotlib

目標: 想要用Phython來畫3D Line plot

我的Phython version:3.5.2


1. 先安裝3D Library for Phython, 使用Matplotlib

打開windows command line. 分別鍵入下列兩行指令進行自動安裝

python -m pip install -U pip
python -m pip install -U matplotlib










第一個pip安裝很快,約1~2分鐘裝完
第二個大約要裝個5~8分鐘

安裝完大概長這樣:















安裝方法參考網址
https://matplotlib.org/index.html




2017年11月30日 星期四

[Windows][C/C++] 如何得知Windows中資料夾內的檔案是否被修改(修改時間)


目標是偵測某個資料夾底下的檔案是否有被修改過?可以透過讀取檔案的Last modified time


在Windows底下可以呼叫system API: GetFileTime() function:

API說明可到MSDN:

https://msdn.microsoft.com/zh-tw/library/windows/desktop/ms724320(v=vs.85).aspx


透過這個API可以將檔案的下列三種時間:
 1. Create time,
 2. Last access time,
 3. Last write time


檔案是否有被動過?包含幾種狀況
1. 被修改內容且存檔
2. 檔案被(另外的檔案)覆蓋
3. 檔案被刪除
4. 修改檔名

3跟4是有點像, 4的話原來檔案也等於是刪除,變成新增另外一個檔案的感覺


2016年10月20日 星期四

如何在Visual Studio中使用Boost C++ Library

1. 環境版本,取得Boost
本文使用目前Boost最新版
  • Boost C++ Library 最新版(2016.9) V1.62
               可自行到網站下載: http://www.boost.org/
  • VisualStudio 2010
  • Windows 7
2.  Boost 基本說明


下載後為一個zip壓縮檔,解開後內容如下圖:


資料夾說明如下: (Copy from user manual)
*************************************************
boost_1_62_0\ .................The “boost root directory”
   index.htm .........A copy of www.boost.org starts here
   boost\ .........................All Boost Header files
   lib\ .....................precompiled library binaries
   libs\ ............Tests, .cpps, docs, etc., by library
     index.html ........Library documentation starts here
     algorithm\
     any\
     array\
                     …more libraries…
   status\ .........................Boost-wide test suite
   tools\ ...........Utilities, e.g. Boost.Build, quickbook, bcp
   more\ ..........................Policy documents, etc.
   doc\ ...............A subset of all Boost library docs
*************************************************
Boost Library 有兩種方式給你用
1. 不需要Build:  (Header Only)
     
      大部分Lib只需要include Header就行了, Library code都寫在header
      所以你用了之後跟你的code一起Build就行了, (Templete & inline functions)


2. 要Build:
    一些需要先build, 如下: 跟系統有關的
3.  VS2010 設定, Win32 console program為例
有了上面說明,就可以很容易知道怎麼用Boost,
對於不用build的Lib,只要include header就行了
此處以一個Win32 console program為例,要做的設定基本上只要去專案中
加入boost的路徑就行了:

加入Boost的路徑可能如下,或者看你是放在哪裡?
C:\Program Files\boost\boost_1_62_0

Property\Configuration Property\C/C++\General\Additional Include Directories




4. 簡單範例: 使用boost/array

下面這段code 來測試使用boost, (我隨便寫寫...有compiler過沒問題)
 主要是宣告一個boost int array, 大小10
全部填入3, 然後print出來

**************************************
#include "stdafx.h"
#include <boost/array.hpp>
using namespace boost;

int _tmain(int argc, _TCHAR* argv[])
{
      boost::array<int, 10> a;  
      a.fill( 3);

     for( int i = 0; i < a.size(); i++ )
          printf( " %d \n ", a[i] );

    return 0;
}
*****************************************

這個是Boost中 container 的static array, 用法可參考Boost線上說明
http://www.boost.org/doc/libs/1_62_0/doc/html/array.html

完畢!

2015年9月14日 星期一

在 Windows 7 64 bit 上使用 Sikuli Script

2015/9.15
GUI, 人機介面怎麼測試,發現了好玩的東西~
紀錄一下測試的步驟:
環境: MS Windows 7 64bit


Sikuli (西酷吏, 自己亂翻)
視覺化的程式語法,可以模擬使用者在桌面上用滑鼠跟鍵盤的操作
所以對於我們要用來做測試的話是相當的方便

Step1. 下載軟體 (Windows version):

Java run-time environments:  (必須安裝 Version 6 )
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase6-419409.html#jre-6u30-oth-JPR

沒有Jave 無法正常使用 Sikuli IDE and Setup.

我偏好免安裝版:
https://launchpad.net/sikuli/sikulix/x1.0-rc3/+download/Sikuli-X-1.0rc3%20%28r905%29-win32.zip

安裝包:
https://launchpad.net/sikuli/sikulix/1.0.1/+download/sikuli-setup.jar



Step2. 安裝執行
解壓縮後執行sikuli-setup.jar
啟動IDE: Sikuli-IDE-w.bat (批次檔的內容必須正確指定到JRE6的路徑)
這邊常見的問題是,啟動Sikuli-IDE後要截圖會失敗,我是看這一篇解決問題滴:
https://bugs.launchpad.net/sikuli/+bug/893772



Step3. 開始Program...



官網:
http://www.sikuli.org/