如何使用System.Drawing.Drawing2D
;
我试过这个:
private Matrix Rb = new Matrix ( );
但是当我需要这个矩阵时它给了我身份矩阵:
(a, 0 ,0; 0 , a,0, 0,0,a)
我怎样才能将这个矩阵用于使用反转旋转等功能?
答案 0 :(得分:0)
Matrix matrix = new Matrix(m11, m12, m21,m22, dx,dy);
类封装了一个3乘3的仿射矩阵。
你可以这样开头:( https://msdn.microsoft.com/en-us/library/d0616edf(v=vs.110).aspx)
floats
所有值均为m11
m12
:新Matrix的第一行和第一列中的值。m21
:新Matrix的第一行和第二列中的值。m22
:新Matrix的第二行和第一列中的值。dx
:新Matrix的第二行和第二列中的值。dy
:新Matrix的第三行和第一列中的值。public class Bill {
String acc_no;
String bill_no;
String phone_no;
int amount_;
public Bill() {
}
public Bill(String acc_no, String bill_no, String phone_no, int amount_) {
this.setAcc_no(acc_no);
this.setBill_no(bill_no);
this.setPhone_no(phone_no);
this.setAmount_(amount_);
}
public Bill(String acc_no, String phone_no, int amount_) {
this.acc_no = acc_no;
this.phone_no = phone_no;
this.amount_ = amount_;
}
public Bill(String acc_no, String bill_no, int amount_) {
this.acc_no = acc_no;
this.bill_no = bill_no;
this.amount_ = amount_;
}
public Bill(String acc_no, int amount_) {
this.setAcc_no(acc_no);
this.setAmount_(amount_);
}
public String getAcc_no() {
return acc_no;
}
public void setAcc_no(String acc_no) {
this.acc_no = acc_no;
}
public String getBill_no() {
return bill_no;
}
public void setBill_no(String bill_no) {
this.bill_no = bill_no;
}
public String getPhone_no() {
return phone_no;
}
public void setPhone_no(String phone_no) {
this.phone_no = phone_no;
}
public int getAmount_() {
return amount_;
}
public void setAmount_(int amount_) {
this.amount_ = amount_;
}
:新Matrix的第三行和第二列中的值。答案 1 :(得分:0)
您实际上无法在第3列中设置值。见here:
在GDI +中,您可以在Matrix对象中存储仿射变换。因为矩阵的第三列代表仿射 转换总是(0,0,1),您只指定六个数字 在构造Matrix对象时的前两列中。
要设置前两列,请使用constructor overload并传入六个数字。