2018. 9. 21. 13:24

추석후

WPF <-> DB 데이터바인딩 (MySQL)

listview로 표시

listbox로 표시


추후 통계추가해서 올릴예정



Posted by 하루나비꿀
2018. 6. 20. 14:02


이번글은 ChartDirector의 Freetrial중 3D 차트(좌표에 점표시)를 사용하는법을 적으려고한다.


저작권에 문제가생기면 삭제하도록 하겠습니다.


다운로드 경로

--------------------------------------------------------------------

http://www.advsofteng.com/download.html

아마 .Net을 다운받았던걸로..

--------------------------------------------------------------------


먼저 C# WindowsForm의 3D차트 예제를 구하기 너무너무힘들었는데 dll을 제공하는 ChartDirector에 감사드립니다.




사진부터 보여드리면 이런것입니다.


3D Scatter Chart 2를 사용했습니다.


기존에는 데이터를바탕으로 차트를 만들게만되있어서, Realtime chart를 참고하여 원하는좌표에 점을 추가하는것을 넣어봤습니다.


폼에서 ChartDirect 만의 도구가있어서 다른 프로젝트에서 복사해서 가져온뒤 사용합시다.



View Code에서 코드만 복사해오면 안되고, DemoModule 클래스파일을 가져와야합니다.


첨부한 파일엔 DemoModule 부분을 약간 수정하였습니다.


코드가 쉬워서 딱히 내용포스팅보단 파일을 올립니다.


CSharpChartExplorer.zip





'윈도우 프로그래밍 > C#' 카테고리의 다른 글

C# WIndowsForm 크로스쓰레드 해결법(Invoke)  (0) 2018.06.20
Posted by 하루나비꿀
2018. 6. 20. 13:25
        float time = 0;
        int index = 0;
        unsigned char b[] = { buf[index], buf[index + 1], buf[index + 2], buf[index + 3] }; //4byte
        memcpy(&time, &b, sizeof(float));
        index += sizeof(float);
C++에서 byte라는 형식이 없어서 1byte 형식의 unsigned char 을 사용했다.

float은 4byte라 처음엔 float의 byte에 1byte씩 밀어넣는식으로 짯는데 무식한방법이란걸 깨달았다.(비트연산으로 밀어넣는식) 

memcpy 함수를 사용해서 간편하게 만들수있다.  

이 예제는 C#클라 C++서버 소켓통신을 구현하다가 사용하게됬는데,

 c#에서 float을 byte로 변환해서 송신했을때, c++에서 그대로 수신해서 float으로 변환시 비트연산 맨앞 부호값이 1이되

어 값이 정상적으로 안나올경우가 존재한다.

이때 간편하게 변환시킬수있다.

EX) buf[64]는 64 byte Array라 생각하면된다.


buf[64] 에 float 형식 데이터를 16개를 C#에서 보내고 C++에서 receive 한뒤 저 buf[64]의 바이트를 다시 float으로 바꿀때 사용된다. 


 나도 뭐라고쓰는지 잘 모르겠지만, 나중에 내가볼땐 잘 이해할 수 있을것이다. 혹시 필요한사람이 있을수도있으니 포스팅



Posted by 하루나비꿀