퇴근5분전


훈스에 올라온 질문글에 무심코 그룹바이로 하면 쉬울것 같아요... ....................

LINQ는 간간히 msdn보면서 하고 있지만...

무심코 한말을 되집어 보고자 직접 쿼리에 도전...

ㅡ.,ㅡ; 1시간 넘게 삽질 했넹..

Sum .. 이넘때메...








그룹바이 은근 어렵넹.

dt = new DataTable();

            dt.Columns.Add("A");
            dt.Columns.Add("B");

            dt.Rows.Add(new object[] { "A", 10 });
            dt.Rows.Add(new object[] { "A", 10 });
            dt.Rows.Add(new object[] { "B", 10 });
            dt.Rows.Add(new object[] { "A", 10 });

            var a = from tmp in dt.AsEnumerable()
                    group tmp by tmp.Field<string>("A") into k
                    select new
                    {

                        c1 = k.Key,
                        c2 = k.Sum(sum =>  Convert.ToInt32( sum.Field<string>("B") ))
                    };

            DataTable result = new DataTable();
            result = dt.Clone();
            foreach (var tt in a)
            {
                result.Rows.Add(new object[] { tt.c1, tt.c2 });
            }

'# 3) .Net ( Vs 2008 ) > C#' 카테고리의 다른 글

Ms Access 사용하기 예제소스.  (0) 2010.08.11
WebClient와 WebBrowser의 차이는??  (3) 2010.07.30
Double.Parser()...  (0) 2010.07.19
암묵적인 형변환? 코드...?  (0) 2010.05.18
IPC .Net ( 프로세스간 통신 )  (1) 2010.05.12

 나에게 행렬이란? 계산방법이나 결과값을 구하는건 알겠는데... 그래픽에 막상 적용해놓고도 이게 뭔가... 싶은것?
역시 수학 기초가 딸리면 멍때리는건 시간문제얌 ㅡ.,ㅡ;;;


얼마전 훈스에 올라온 행렬 구하는 객체가 있는가에 대해 검색좀 해보니 Matrix란게 있었는데...

또 마침 별그리는것... 선 이동시하는것등... 갑자기 또 관심종목이 ㅡ.,ㅡ;;;


 오늘 저녁엔 Matrix를 가지고 놀아보자 해서 별그리는데 써보기로 했다.

그럼 이 Matrix는 뭐하는 놈인고 하니 MSDN 에 보니 이 놈이 좌표변환 하는데 쓰이는 놈이었다.

3D 구현때보다는 머 나름 편했다.  3D는 아직도 이해 불가..( 절두체 ㅡ.,ㅡ;; )

2D로 별을 그린다고 했을때

  private void DrawStar(Graphics g, double r, PointF p)
        {
            PointF[] ps = new PointF[6];
            double RadianTheta = 0d;
            int cnt = 0;
            for (double i = 0; i <= 720d; i += 144d)
            {
                RadianTheta = (angle + i) * Math.PI / 180d;
                ps[cnt] = new PointF(p.X + (float)(r * 1d * Math.Cos(RadianTheta)),
                                                  p.Y + (float)(r * 1d * Math.Sin(RadianTheta)));
                cnt++;
            }
            g.DrawLines(Pens.Red, ps);
            g.DrawEllipse(Pens.Blue, p.X - 5, p.Y - 5, 10, 10);
        }

말할것도 없이 이거답... angle은 회전각인데.. 별을 빙글~빙글~ 돌려봤다..

이게 오히려 나에겐 이해하기 쉽다...

  private void DrawStar(PaintEventArgs e)
        {
            PointF[] starPointFs = new PointF[6];
            int cnt = 0;
            double theta = 0f;
            for (double i = 0; i <= 720d; i += 144d)
            {
                theta =( i - 5f) * Math.PI / 180d;
                starPointFs[cnt] = new PointF((float)Math.Cos(theta), (float)Math.Sin(theta));
                cnt++;
            }
            e.Graphics.DrawLines(Pens.Red, starPointFs);

            //Matrix를 이용한 좌표변환 그리기...
            Matrix mx = new Matrix(1f, 0f, 0f, 1f, this.Width/2, this.Height/2);
            mx.Scale(100f, 100f);
            mx.Rotate((float)angle);
            mx.TransformPoints(starPointFs);               
    
            e.Graphics.DrawLines(Pens.Black, starPointFs);
        }

Matrix의 기본 파라미터값( Sx , Rx, Ry, Sy, Dx, Dy ) 임.

Rx, 나 Ry를 값을 주면 왜곡되는데... 왜그런지 모르겠넹... 쩝.

매트릭스로 구현한 소스이다.
기초 메트릭스를 생성하고 여기에 크기변환,  회전값을 주고
별의 각 점좌표를 주고 변환 한다!
그리고 그려주면 별이 그려진다.

소스상에 i - 5f 는  두개의 별을 동시에 그리면 위상이 같아서 겹치므로 위상차를 주었다.

간단하게나마 매트릭스를 그려보았다.

음 어따 써먹쥐?????????????????????????????  이걸 왜했을까?

구현된 스샷!

# 실제 이미지는 타이머로 빙글 빙글 돌리고 있다....



'# 2) .Net ( Vs 2005 ) > 기타' 카테고리의 다른 글

글꼴 폰트 관련 MSDN 링크  (0) 2010.08.10
소수 구하기 소스...  (0) 2010.08.06
IFormattable  (0) 2010.07.15
트리노드 검색해서 확장하기...  (0) 2010.03.17
목록 로테이션???  (0) 2010.03.16


 KeyboardNavigation.TabNavigation="Cycle"

페이지 내의 포커스가 마지막엘리먼트 이후 외부로 또는 어딘지 모르는곳으로 튀는것을 막기위해
처음엔 FocusManager.FocusedElement="{Binding ElementName=포커스지정엘리먼트명}"
으로 작성하여 잘 되는것처럼 보였으나...

탭컨트롤 안으로 들어가서 계층구조의 깊이가 깊어질수록 난해하고 복잡함에 지정된대로 적용도 안되고 하여
MSDN을 다시 읽어보던 중 키보드네비게이션을 발견!!

아쒸~~ 꼬박 하루 삽질해서 찾은거네.. ㅋㅋ  어쨌든..
참조 : http://msdn.microsoft.com/ko-kr/library/aa969768(VS.90).aspx#Keyboard_Focus 

열심히 바꿔야겠군...

2015-09-05

     첨부파일을 추가했음 ( 내부 ) : 사용자정의용컨트롤에 대한 처리.

'# 3) .Net ( Vs 2008 ) > WPF' 카테고리의 다른 글

IValueConverter 사용 데모  (0) 2010.09.06
WPF 쓰레드 ( 프로그래스바 )  (0) 2010.08.10
툴을 제작 해서 프로젝트를... 진행하다!  (0) 2010.02.26
WPF 3D  (0) 2009.12.29
데이타바인딩(2)  (0) 2009.12.28