• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            創建一個多邊型立方體:Create > Polygons Primitives > Cube

            創建多邊型工具: polygons>create polygon tools 選中此工具,在視圖中依次點擊四次完成后回
            車創建一個四邊型面。

            擴展多邊型命令:選中剛才創建的四邊型,選擇,polygons>Append To Polygon Tool點擊四邊型中
            任何一個邊進括展邊的操作。

            多邊型合并:兩個多邊型物體合并為一個物體 polygon>combine

            多邊型布爾運算:多邊型建模工具提供了三種布爾運算方式,
            polygon>booleans>union,difference,intersection合集,交集,差集。

            多邊型鏡向:選擇任意模型然后選polygon>mirror進行鏡向,鏡向同時可以指定是否合并邊。

            光滑模型:選擇任意多邊型模然后選擇,polygons>smooth進行光滑模型,可指定光滑等級。

            光滑代理方式:選擇任意模型,然后選擇,polygons>Smooth Proxy或使用快捷鍵Ctrl+`。

            平均點命令:選中模型或其中任意的頂點,然后選擇polygons>Average Vertices進行平滑模型。

            三邊型轉換命令:選中任意模型,然后選擇polygons>Triangulate可將四邊型模型轉換為三邊型模型。

            四邊型轉換命令:選中任意模型,然后選擇polygons>Quadrangulate 可將三邊型模型轉換為四邊型模型。

            多邊型工具設定:keep faces together 這項工具用于設定擠出的邊是否合并,此項設定上非常重要。

            細分表面:在多邊型表面方式下選擇任意面,然后選擇edit polygons>Subdivise

            切線命令:選中多邊型模然后選擇edit polygons>split polygon tool 在模型邊上任意點擊回車完成切線。

            posted @ 2010-02-21 21:33 鄒敏 閱讀(817) | 評論 (0)編輯 收藏

                  回想起在微軟做實習生時的情景。一年之前是自己做不好東西,讓徐老師痛心,在受到徐老師批評時心里很是不服氣,總認為徐老師的指導有問題。而自己則在固執,偏執,愚笨,自以為是與自負的心態中繼續自己的爛程序。事情的結果自然是東西始終沒有成型,自己傷心,更讓徐老師痛心。
                  時隔一年,現在的老師讓我帶著一個剛來的師弟做一個東西。很不幸,這個師弟完美的復制了一年前的我,缺乏鍛煉與思維的培養,而且有些自以為是。長久以來,我都是選擇合作者,所以所作之事,都算順心。但是這次,很糟糕。有時候自己控制不住情緒,發幾句火,結果實驗室火藥味十足。我在生氣為什么他的東西有問題,而他在生氣我為什么沖著他發火。
                    自己心里面很是窩火。。。。。
                    當年所作事情的比現在的要重要的多,徐老師應該窩了很大的火吧。 真是對不住了,徐老師!

            posted @ 2010-02-11 13:56 鄒敏 閱讀(455) | 評論 (2)編輯 收藏

             

            #include<string>
            using namespace std;
            string ReadFile(string fileName)
            {
               
            string all_contents;
               FILE 
            *file=fopen(fileName.c_str(),"r");
               
            char c=fgetc(file);
               
            while (c!=EOF)
               {
                all_contents
            +=c;
                c
            =fgetc(file);
               }
                fclose(file);
                
            return all_contents;

            posted @ 2010-02-11 12:29 鄒敏 閱讀(849) | 評論 (0)編輯 收藏

            單例模式,舉例如下:  
              class   Singleton  
              {  
                  //   Fields  
                    private   static   Singleton   instance;  
                  //   Constructor  
                    protected   Singleton()   {}  
                  //   Methods  
                    public   static   Singleton   Instance()  
                  {  
                        if(   instance   ==   null   )  
                          instance   =   new   Singleton();  
                      return   instance;  
                  }   
             

            posted @ 2010-02-09 14:24 鄒敏 閱讀(130) | 評論 (0)編輯 收藏

            要在case語句中聲明變量,要用{}把case塊包起來
            case 1:
               {
            int a=0;
            break;
              }

            case 2:
            {
            int a=2;
            break;
            }

            posted @ 2010-02-07 22:25 鄒敏 閱讀(718) | 評論 (2)編輯 收藏

            C++中文件相互包含是一件非常麻煩的事情。因此在寫嵌套類的時候最好把兩個類都寫在相同的.h文件和.cpp文件中

            posted @ 2010-01-29 23:29 鄒敏 閱讀(289) | 評論 (0)編輯 收藏

              1 import javax.swing.*;
              2 import javax.swing.border.EmptyBorder;
              3 import java.awt.*;
              4 import java.awt.event.*;
              5 import java.util.*;
              6 
              7 
              8 /**
              9  * Title:        Login Panel
             10  * Description:  A simple yet complete login/logout panel with user callbacks
             11  *               for approving login attempts and getting notification of logouts.
             12  * Copyright:    Copyright (c) 2004
             13  * Company:      Superliminal Software
             14  * @author Melinda Green
             15  * @version 1.0
             16  */
             17 
             18 public class LoginPanel extends JPanel {
             19     public final static String
             20         LOG_IN  = "Login",
             21         LOG_OUT = "Logout";
             22     protected JButton logButt;
             23     public JButton getLogButton() { return logButt; }
             24     private final static int DEFAULT_PSWD_CHARS = 10;
             25     private JTextField nameField = new JTextField(DEFAULT_PSWD_CHARS);
             26     public String getUserName() { return nameField.getText(); }
             27 
             28     /**
             29      * override this method to return true if approved, false otherwise.
             30      * default is true.
             31      */
             32     public boolean approveLogin(String uname, String pswd) {
             33         return true;
             34     }
             35 
             36     /**
             37      * override this method to learn about logout events.
             38      */
             39     public void loggedOut(String uname) {
             40     }
             41 
             42     public LoginPanel() {
             43         this(false);
             44     }
             45 
             46     public LoginPanel(final boolean clearPasswords) {
             47         this(clearPasswords, truenullnull);
             48     }
             49 
             50     /**
             51      * @param clearPasswords if true, clears password field on successful login.
             52      * @param initial_user optional default text to load into the 'user' type-in.
             53      * @param initial_password optional default text to load into the 'password' type-in.
             54      */
             55     public LoginPanel(final boolean clearPasswords, final boolean displayFailures, String initial_user, String initial_password) {
             56         final JPasswordField pswdField = new JPasswordField(DEFAULT_PSWD_CHARS);
             57         logButt = new JButton(LOG_IN);
             58         KeyListener quickLogin = new KeyAdapter() {
             59             public void keyTyped(KeyEvent ke) {
             60                 if(ke.getKeyChar() == KeyEvent.VK_ENTER) {
             61                     logButt.doClick();
             62                     logButt.requestFocus();
             63                 }
             64             }
             65         };
             66         nameField.setText(initial_user);
             67         pswdField.setText(initial_password);
             68         logButt.setName(LOG_IN);
             69         nameField.addKeyListener(quickLogin);
             70         pswdField.addKeyListener(quickLogin);
             71         // create the grid
             72         JPanel grid = new JPanel(new GridLayout(22));
             73         grid.setBackground(new Color(255,255,255));
             74         grid.add(new JLabel("User Name"));
             75         grid.add(nameField);
             76         grid.add(new JLabel("Password"));
             77         grid.add(pswdField);
             78 
             79         // create login button row
             80         JPanel row = new JPanel();
             81         row.setBorder(new EmptyBorder(5050));
             82         row.setOpaque(false);
             83         row.setLayout(new BoxLayout(row, BoxLayout.X_AXIS));
             84         row.add(logButt);
             85         logButt.setBackground(new Color(220,220,220));
             86 
             87         logButt.addActionListener(new ActionListener() {
             88             public void actionPerformed(ActionEvent ae) {
             89                 if(logButt.getText().equals(LOG_IN)) {
             90                     // seek login approval from derived class
             91                     if(approveLogin(nameField.getText(), new String(pswdField.getPassword()))) {
             92                         // note: must set logout text *before* clearing password
             93                         // otherwise component dependancy handler will disable the
             94                         // login button w/out password text before later setting logout text
             95                         // this closes bug #2336
             96                         logButt.setText(LOG_OUT);
             97                         if(clearPasswords)
             98                             pswdField.setText(null);
             99                         nameField.setEnabled(false);
            100                         pswdField.setEnabled(false);
            101                         fireLoginEvent(nameField.getText(), true);
            102                     }
            103                     else
            104                         if(displayFailures)
            105                             JOptionPane.showMessageDialog(LoginPanel.this"Login Denied""Login Error", JOptionPane.ERROR_MESSAGE);
            106                 }
            107                 else {
            108                     logButt.setText(LOG_IN);
            109                     loggedOut(nameField.getText());
            110                     nameField.setEnabled(true);
            111                     pswdField.setEnabled(true);
            112                     fireLoginEvent(nameField.getText(), false);
            113                 }
            114             }
            115         });
            116 
            117         // implement component dependancies
            118        // new ComponentDependencyHandler(nameField, pswdField) {
            119          //   public void dependencyNotification() {
            120            //     String
            121              //       logtext = logButt.getText(),
            122                //     nametext = nameField.getText(),
            123                  //   pswdtext = String.copyValueOf(pswdField.getPassword());
            124                 //boolean newstate = logtext.equalsIgnoreCase(LOG_OUT) ||
            125                   //  (nameField.getText() != null && nametext.length() > 0 // has login text?
            126                  //    && pswdtext.length() > 0);  // has password text?
            127                 //logButt.setEnabled(newstate);
            128            // }
            129         //};
            130 
            131         // construct final layout
            132         setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
            133         add(grid);
            134         add(row);
            135     }
            136 
            137     public interface LoginListener {
            138         void loggedIn(String uname);
            139         void loggedOut(String uname);
            140     }
            141     public static class LoginAdapter implements LoginListener {
            142         public void loggedIn(String uname){}
            143         public void loggedOut(String uname){}
            144     }
            145     private Vector loginListeners = new Vector();
            146     public void addLoginListener(LoginListener ll) { loginListeners.add(ll); }
            147     public void removeLoginListener(LoginListener ll) { loginListeners.remove(ll); }
            148     protected void fireLoginEvent(String uname, boolean in) {
            149         for(Enumeration e=loginListeners.elements(); e.hasMoreElements(); ) {
            150             LoginListener ll = (LoginListener)e.nextElement();
            151             if(in)
            152                 ll.loggedIn(uname);
            153             else
            154                 ll.loggedOut(uname);
            155         }
            156     }
            157 
            158     /**
            159      * simple example test program for LoginPanel class
            160      */
            161     public static void main(String[] args) {
            162         final String NOT_LOGGED_IN = "LoginPanel Test - Currently Logged Out";
            163         final JFrame frame = new JFrame(NOT_LOGGED_IN);
            164         frame.getContentPane().add(new LoginPanel() {
            165             public boolean approveLogin(String uname, String pswd) {
            166                 // this is where to make the server call to approve or reject login attempt
            167                 frame.setTitle("LoginPanel Test - Currently logged in as " + uname);
            168                 return true;
            169             }
            170             public void loggedOut(String uname) {
            171                 frame.setTitle(NOT_LOGGED_IN);
            172             }
            173         });
            174         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            175         frame.pack();
            176         frame.setSize(500, frame.getHeight());
            177         frame.setVisible(true);
            178     }
            179 }
            180 
            181 

            posted @ 2008-12-11 09:44 鄒敏 閱讀(1461) | 評論 (0)編輯 收藏

            C/C++中fseek函數最多能夠從起始位置偏移32位,也就是4G如果有一個10G的文件應當如下來做:
            方法一:用Windows API創建大文件。
            Windows API提供了創建大文件的函數,CreateFile, ReadFile,和WriteFile.具體的用法可以參考MSN.他的尋址范圍理論上講可達2^64。可以用__int64類型數據尋址。
             1 __int64 DataBase::myFileSeek(HANDLE hf, __int64 distance, DWORD MoveMethod)
             2 {
             3      LARGE_INTEGER li;
             4    li.QuadPart = distance;
             5 
             6    li.LowPart = SetFilePointer (hf, 
             7                                 li.LowPart, 
             8                                 &li.HighPart, 
             9                                 MoveMethod);
            10 
            11    if (li.LowPart == INVALID_SET_FILE_POINTER && GetLastError() 
            12        != NO_ERROR)
            13    {
            14       li.QuadPart = -1;
            15    }
            16    return li.QuadPart;
            17 }
            方法二:把大文件拆成不超過2G的小文件來逐個處理。那么尋址方式為
            __int64 Address=FileNum*2G+Address%2G.
            文件索引為:Address/2G.文件內偏移為Address%2G.
            1

            posted @ 2008-11-19 22:23 鄒敏 閱讀(617) | 評論 (0)編輯 收藏

            malloc 失敗的可能原因是前面存在內存超界訪問。比如說前面有double *a=(double*)malloc(10*sizeof(double)); a[10]=10;那么再用malloc時就可能會出問題。
            在我的代碼中a[11]=11;之后使用malloc仍不會出問題,但是a[20]=20;再使用malloc 就出問題了。
            解決此類問題方法之一是在程序調試階段判斷是否存在訪問超界的情況,在賦值或者訪問數組前先判斷下標的大小是否超出了數組分配的實際大小。

            posted @ 2008-11-18 10:28 鄒敏 閱讀(4999) | 評論 (1)編輯 收藏

            假設有char a[2];
            如要把a轉換為int值。應是如下寫法int b=*(int *)a;
            即,先把指針a 轉換為一個int指針,然后再此基礎上取值。
            但是另一種寫法 int b=(int)(*a);是不對的,*a 取a的內存單元內容,因為現在a是char指針,所以只會取a[1]中內容,最大為255. 這里要說明的是,在把char或byte數組轉換為其他類型的值時,要先把數組指針的類型變為其他數據類型的指針。然后再取值。

            posted @ 2008-10-23 14:08 鄒敏 閱讀(6537) | 評論 (0)編輯 收藏

            僅列出標題
            共2頁: 1 2 
            久久久噜噜噜久久熟女AA片| 久久久精品国产Sm最大网站| 久久妇女高潮几次MBA| 亚洲AV无码一区东京热久久| 久久久久女人精品毛片| 国内精品欧美久久精品| 亚洲精品乱码久久久久久蜜桃不卡| 国产婷婷成人久久Av免费高清 | 99久久精品国产一区二区| 一本久道久久综合狠狠爱| 久久99中文字幕久久| 亚洲国产视频久久| 色综合久久久久网| 97久久国产露脸精品国产| 久久国产福利免费| 久久精品中文騷妇女内射| 久久久久亚洲精品无码网址| 久久丫精品国产亚洲av不卡| 日本加勒比久久精品| 欧美精品一区二区精品久久| 国产成人久久精品一区二区三区 | 国产精品热久久无码av| 午夜精品久久久久久99热| 欧美伊人久久大香线蕉综合69| 久久精品嫩草影院| 久久香蕉超碰97国产精品| 久久精品国产99国产精品导航| 久久国产精品免费一区二区三区| 国产V综合V亚洲欧美久久| 国产精品免费看久久久| 一本色道久久88—综合亚洲精品| 久久夜色精品国产噜噜亚洲a| 一本大道久久a久久精品综合| 青草国产精品久久久久久| 狠狠色噜噜色狠狠狠综合久久| 久久久久亚洲精品无码网址| 成人午夜精品久久久久久久小说 | 久久久久国产精品熟女影院| 久久久久人妻一区二区三区vr| 亚洲av伊人久久综合密臀性色| 久久精品国产清高在天天线|