wu
2024-12-31 1edefcae08fe7c8df6a177e5dbbc8ab8f8194187
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
package Optimize;
 
import org.json.JSONException;
 
import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;
 
import Optimize.*;
import ng.db.DBHelper;
import ng.db.DBSession;
import ng.db.NGFunction;
public class mn {
 
    public static void _wmain(String[] inputs){
        
        ActiveXComponent dotnetCom = new ActiveXComponent("Microsoft.PhotoAcquire");
        Dispatch myCom = (Dispatch) dotnetCom.getObject();
        //Variant ret= Dispatch.call(myCom, "getState");
        System.out.println(myCom.toString());
    }
    
 
    
    
    public static void main(String[] inputs){
    
        try {
 
               OptimizeTag tag = OptimizationManager.createOptimization("abc");
               tag.setProperty("abc", "hello world");
               System.out.println(tag.getProperty("abc"));
               tag.setProperty("abc", "kkkk");
               System.out.println(tag.getProperty("abc"));
               OptimizationInput input=new OptimizationInput();
               
               input.GongCheng="P0001";
               input.Param=new OptimizationInput.Param();
               input.Polygons=new OptimizationInput.Polygon_Info[2];
               OptimizationInput.Polygon_Info p=new  OptimizationInput.Polygon_Info();
               p.count=30;
               p.CustomName="a";
               p.DM1=0;
               p.DM2=0;
               p.gongcheng="P0001";
               p.height=800;
               p.JiaHao="A01";
               p.liuchengka="NG01";
               p.LM1=0;
               p.LM2=0;
               p.orderid="nnn";
               p.rownumber=1;
               p.thickness=6;
               p.width=1000;
               p.xuhao="1";
               input.Polygons[0]=p;
               
               p=new  OptimizationInput.Polygon_Info();
               p.count=20;
               p.CustomName="a";
               p.DM1=0;
               p.DM2=0;
               p.gongcheng="P0001";
               p.height=1800;
               p.JiaHao="A02";
               p.liuchengka="NG02";
               p.LM1=0;
               p.LM2=0;
               p.orderid="nnn";
               p.rownumber=2;
               p.thickness=6;
               p.width=1000;
               p.xuhao="2";
               input.Polygons[1]=p;
               
           input.Stocks=new OptimizationInput.Stock_Info[1];
           
           OptimizationInput.Stock_Info st=new OptimizationInput.Stock_Info();
           st.Color="c";
           st.count=1000;
           st.down=0;
           st.height=2440;
           st.left=0;
           st.libposition="aaa";
           st.right=0;
           st.supplyer="aaa";
           st.thickness=6;
           st.up=0;
           st.width=3660;
           st.wuliao_number="M0001";
           input.Stocks[0]=st;
           System.out.println(input.toJson().toString());
           tag.BeginOptimize(input);
        
          while(true){
              java.lang.Thread.sleep(5000);
              OptimizationState state=tag.getState();
              if(state==null)
                  continue;
              System.out.println(state.toJson().toString());
              if(state.State!="busy"){
                  break;
              }
          }
          OptimizationResult ret=tag.getResult();
          tag.saveOpt(input.GongCheng,ret.btContent,"OPTIMA","D:\\0001.opt");
          Object[] o= tag.getResultByBT(input.GongCheng,ret.btContent);
          System.out.println(o[0].toString());
          ret=(OptimizationResult)o[1];
          if(ret!=null)
          System.out.println(ret.toJson().toString());
            
        }catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (NGException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}