구의 일부분이 되는 붉게 표시한 원을 구할 때
원의 반지름은 rcos(t)
중심점으로부터의 높이는 rsin(t)
point.z = r*sin(t);
point.x = r*cos(t)*cos(경도);
point.y = r*cos(t)*sin(경도);
z값은 중심점으로부터의 높이로 두고
x와 y값은 반지름( rcos(t) )에 경도의 코사인값과 사인값을 취하여 곱한다.
구의 일부분이 되는 붉게 표시한 원을 구할 때
원의 반지름은 rcos(t)
중심점으로부터의 높이는 rsin(t)
point.z = r*sin(t);
point.x = r*cos(t)*cos(경도);
point.y = r*cos(t)*sin(경도);
z값은 중심점으로부터의 높이로 두고
x와 y값은 반지름( rcos(t) )에 경도의 코사인값과 사인값을 취하여 곱한다.
- 본문폭 상승
- 카테고리 목록을 우측으로 이동
- 사이드바 3단 -> 2단
- 최하단에 간단한 플래시 삽입.
지난번 초대장배포때 가져가지 않은 분이 있어서
회수 후 재배포합니다.
아래 양식에 맞게 비밀덧글을 작성하신분께 선착순으로 드립니다.(선착순 1명)
1. 메일주소
2. 개설하고자 하는 블로그의 주제나 방향
3. 기존에 운영하던 블로그 주소 (있을 경우에만)
1. 플래시
자세한 설명은 아래에 있습니다.
재미로하는 10년간의 행운그래프 입니다.
운이 별로 좋지 않게 나오면 노력으로 메꾸세요.
사용방법 : 태어난 년도와 이름을 적고 확인버튼을 누르세요.
마우스 오른쪽 버튼으로 언어전환을 할 수 있습니다. (fp11.2)
10월과 11월에 충전된 티스토리 초대장을 7장 배포합니다.
아래 형식에 맞게 비밀덧글을 남겨주시면 검토후 일곱 분을 선정하여
티스토리 초대장을 보내드리겠습니다.
1. 메일주소
2. 개설하고자 하는 블로그의 주제나 방향
3. 기존에 운영하던 블로그 주소 (있을 경우에만)
마감기한 : 24시간 이내 (선착순 아님)
FlashPlayer 11.2부터 브라우저에 실린 swf파일에서도
마우스 우클릭 기능을 쓸 수 있기에 한번 시도해 보았다.
마우스 왼쪽버튼 클릭 : 분홍색으로 전환
마우스 오른쪽버튼 클릭 : 푸른색으로 전환
코딩을 하면서 각종 상황에 대한 테스트가 필요했기 때문에
Valve社의 게임에서 볼 수 있는 것과 비슷한 콘솔 창을 구현하기로 했다.
콘솔 창은 싱글턴 패턴으로 프로그래밍했는데
액션스크립트는 생성자 함수의 접근제한자로 private를 둘 수 없기 때문에
해당 클래스 파일의 패키지 외부에 클래스 하나를 더 두고
싱글턴 클래스 생성자의 매개변수로 그 클래스 타입을 넣어주어야 한다.
아래와 같은 모양이다.
package {
public class Singleton {
private static var instance...
public function Singleton(block:SingletonBlocker)
{
if (block == null) throw new Error...
}
public static function getInstance()...
}
}
class SingletonBlocker{}
프로젝트의 클래스에서 콘솔 창에 뭔가를 표시하는 함수를 호출하면
콘솔창이 없을 경우 새로 창을 띄우고 있으면 그 창에 내용을 출력한다.
콘솔 창은 NativeWindow클래스를 사용하여 새 윈도우를 띄우게 되는데,
이 윈도의 크기가 원하는 대로 되지 않았다. 액션스크립트 도움말을 보면
NativeWindow객체의 stage.stageWidth 나 Height속성을 조절하면 창 크기가
그에 맞게 바뀐다고 하는데 전혀 그렇지가 않는 것이었다..
해결책은 역시 도움말에 나와있었는데
_mainWindow.stage.scaleMode = StageScaleMode.NO_SCALE;
_mainWindow.stage.align = StageAlign.TOP_LEFT;
이 두 구문이 있어야 제대로 창크기 조절이 된다.
코드를 컴파일후 실행시키니 제대로 출력이 나왔다.
다음은 게임에서 사용할 월드 데이터 파일을 제작하는 간단한 툴을 만드는 것이었다.
FileStream클래스와 File클래스로 파일쓰기를 한다.
File객체를 만들 때, 파일쓰기 하려는 위치가 어플리케이션이 있는 폴더라면
var file:File = File.applicationDirectory;
와 같이 초기화해야 한다고 해서 그렇게 해 보니 보안문제로 오류가 났다.-_-;
이 경우에는
var file:File = new File(File.applicationDirectory.nativePath);
file = file.resolvePath("하위폴더"+File.separator+파일이름+".확장자");
요렇게 하니까 되더라..
그 다음 이렇게 해서 생성된 월드 데이터파일에 어플리케이션을 연결해 보기로 했다.
이 작업은 그리 어렵지 않게 할 수 있다.
if(NativeApplication.nativeApplication.isSetAsDefaultApplication("확장자")==false)
NativeApplication.nativeApplication.setAsDefaultApplication("확장자");
연결이 되어 있지 않으면 '이 어플리케이션'을 해당 file의 연결 프로그램으로 설정한다.
단, 응용 프로그램 설명자(xml파일)의 fileTypes노드에 파일의 정보가 선언되어 있어야 한다.
빌드를 하니 128x128 아이콘 파일의 크기가 맞지 않는다는 오류가 계속 뜨는데
src폴더 내의 파일을 수정해도 빌드만 하면 다시 129x129크기의 파일로 바뀌어 버렸다.
bin-debug폴더에 들어있는 파일을 지우니 제대로 빌드가 되었다.
(▲ 데이터파일의 아이콘이 바뀐 모습. 실행하면 맵에디터가 열리고 해당 파일을 불러들인다.)
하나 빼먹은 게 있어 추가로 적는데,
프로그램 연결은 연결프로그램으로 쓸 어플리케이션이 컴퓨터에 설치되어 있는 상태여야 한다. (디버그모드에서는 확인할 수 없다.)
스크린샷 첨부.
티스토리 블로그 글쓰기창이 새 에디터로 바뀌면서
플래시를 삽입할 때 불편함을 느끼셨을 것입니다.
기존 에디터와는 달리 플래시 무비의 크기를 조절하는 인터페이스가 없기 때문입니다.
HTML태그를 봐도 width와 height속성을 어디에 넣어야 할 지 쉽게 알 수 없게 되어있고요.
이럴 때 아래 과정을 거치면 쉽게 플래시의 크기와 위치를 조절할 수 있습니다.
1. 파일 버튼을 눌러서 올릴 플래시를 선택.
2. 파일을 올렸으면 HTML모드로 들어갑니다.
3. cfile 부터 swf부분까지를 복사합니다.
4. 복사가 되었으면 [## 부터 ##]부분까지를 지우고 다음 태그로 대체합니다.
<embed width="가로크기" height="세로크기" src="/attachment/복사했던 주소" quality="high" allowscriptaccess="always" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer">
5. 다시 HTML모드를 해제하면 지정한 크기로 멀티미디어 그림이 나타납니다.
이렇게 해서 새에디터에서도 원하는 크기로 플래시를 넣을 수 있습니다!