2016年8月2日 星期二

Mac iOS Swift Game 1 (Hello World)

Ref:https://www.raywenderlich.com/119815/sprite-kit-swift-2-tutorial-for-beginners
Macbook pro (OS X EI Captian 10.11.5)
Xcode 7.3.1
1. 參考文獻比較 Sprite Kit 與 Unity
2. 開啟 New Project (Game template)
     新專案包含Spaceship圖檔(Assets.xcassets)
3. GameScene.swift
//
//  GameScene.swift
//  SWSpriteHello
//
//  Created by Jou CS on 2016/8/3.
//  Copyright (c) 2016年 Jou CS. All rights reserved.
//

import SpriteKit

class GameScene: SKScene {
    override func didMoveToView(view: SKView) {
        /* Setup your scene here */
        //-- 2016.8.3 加入 Hello World! 標籤控制項
        let myLabel = SKLabelNode(fontNamed:"Chalkduster")
        myLabel.text = "Hello, World!"
        myLabel.fontSize = 45
        myLabel.position = CGPoint(x:CGRectGetMidX(self.frame), y:CGRectGetMidY(self.frame))
        
        self.addChild(myLabel)
    }
    
    override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
       /* Called when a touch begins */
        // -- 2016.8.3 Click 加入 自轉的Spaceship
        for touch in touches {
            let location = touch.locationInNode(self)
            
            let sprite = SKSpriteNode(imageNamed:"Spaceship")
            
            sprite.xScale = 0.5
            sprite.yScale = 0.5
            sprite.position = location
            
            let action = SKAction.rotateByAngle(CGFloat(M_PI), duration:1)
            
            sprite.runAction(SKAction.repeatActionForever(action))
            
            self.addChild(sprite)
        }
    }
   
    override func update(currentTime: CFTimeInterval) {
        /* Called before each frame is rendered */
    }
}
4. 執行專案

2016年8月1日 星期一

Mac Swift Animation 1

Ref:https://www.codementor.io/swift/tutorial/view-animations-ios-tutorial
1. Open a new SingleView project
2. Open Main.storyboard
    Add ImageView Control
3. Open Assets.xcassets
     Right button click : Add new image set
     Drop Image file
4. Add ImageView (image)
5. Add animation function in ViewController.swift
//
//  ViewController.swift
//  SWANPNG1
//
//  Created by Jou CS on 2016/8/1.
//  Copyright © 2016年 Jou CS. All rights reserved.
//

import UIKit

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
// 1. drag ImageView control into here : declare (MVC)
    @IBOutlet weak var vIMG1: UIImageView!
    
// 2. Override function of viewWillAppear    
    override func viewWillAppear(animated: Bool) {
        super.viewWillAppear(animated)
        
    }
// 3. Override function of viewDidAppear
    
    override func viewDidAppear(animated: Bool) {
        super.viewDidAppear(animated)
        UIView.animateWithDuration(5, animations: {
            self.vIMG1.backgroundColor = UIColor.blueColor();
        })
        
    }


}






 











4. Repeat, Autoreverse
 //UIView.animateWithDuration(5, animations: {
 //    self.vIMG1.backgroundColor = UIColor.blueColor();
 // })

 UIView.animateWithDuration(5, delay: 0.5, options: [.Repeat, .Autoreverse], animations:{ self.vIMG1.backgroundColor = UIColor.blueColor();}, completion: nil)


2016年7月30日 星期六

brew update error /usr/local must be writable

brew update error /usr/local must be writable
Solved:
1. sudo chmod -R g+w /usr/local
2. brew udate

2016年7月23日 星期六

Terminal mode object C Ex1

Ref:http://www.informit.com/articles/article.aspx?p=1819492
Macbook pro (OS X EI Captian 10.11.5)
Xcode 7.3.1
1. Prepare code (main.m)
//
//  main.m
//  prog1
//
//  Created by Steve Kochan on 7/7/11.
//  Copyright 2011 ClassroomM, Inc.. All rights reserved.
//
// clang -fobjc-arc -framework Foundation main.m -o prog1
// ,/prog1
//
#import <Foundation/Foundation.h>

int main (int argc, const char * argv[]) {
   @autoreleasepool {

      // insert code here...
      NSLog (@"Hello World!");
   }
   return 0;

}
2. Compile

clang -fobjc-arc -framework Foundation main.m ecute-o prog1

3. Execute
./prog1

4. Result

Mac Java Form Hello

ref:http://www.tutorialspoint.com/javaexamples/gui_line.htm
Macbook pro (OS X EI Captian 10.11.5)
java 1.7.0_79
1. Prepare java code by 文字編輯器
// 1. Filename = class name (JavaFormHello.java)
// 2. Prepare java code (filename name.java)
// 3. Command mode
// 3.1 Compile: javac name.java
// 3.2 Execute: java name(.class)
import java.awt.*; 
import java.awt.event.*;
import java.awt.geom.Line2D;
import javax.swing.JApplet;
import javax.swing.JFrame;

public class JavaFormHello extends JApplet {
   public void init() {
      setBackground(Color.white);
      setForeground(Color.white);
   }
   public void paint(Graphics g) {
      Graphics2D g2 = (Graphics2D) g;
      g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
      RenderingHints.VALUE_ANTIALIAS_ON);
      g2.setPaint(Color.gray);
      int x = 5;
      int y = 7;
      g2.draw(new Line2D.Double(x, y, 200, 200));
      g2.drawString("Line", x, 250);
   }
   public static void main(String s[]) {
      JFrame f = new JFrame("Line");
      f.addWindowListener(new WindowAdapter() {
         public void windowClosing(WindowEvent e) {
            System.exit(0);
         }
      });
      JApplet applet = new JavaFormHello();  // Becareful the class name
      f.getContentPane().add("Center", applet);
      applet.init();
      f.pack();
      f.setSize(new Dimension(300, 300));
      f.setVisible(true);
   }
}
2. Compile:
javac JavaFormHello.java
3. Execute
java JavaFormHello
4. Result

2016年7月22日 星期五

Mac Java Hello

Ref : http://www.tutorialspoint.com/java/index.htm
Macbook pro (OS X EI Captian 10.11.5)
java 1.7.0_79
1. Prepare java code by 文字編輯器
// 1. Filename = class name
// 2. Prepare java code (filename name.java)
// 3. Command mode
// 3.1 Compile: javac name.java
// 3.2 Execute: java name(.class)
public class JavaHello {

    public static void main(String []args) {
       System.out.println("Hello World");
    }
} 
2. Compile:
javac JavaHello.java
3. Execute
java JavaHello
4. Result

mono VB hello world

ref: http://progopedia.com/implementation/mono-vbnet/
Macbook pro (OS X EI Captian 10.11.5)
mono 4.2.3
1. Prepare VB code by 文字編輯器
‘compile: vbnc  name.vb
‘ exe: mono name.exe
Module Module1
    Sub Main()
        Console.WriteLine("Hello, World!")
    End Sub
End Module 
2. Compile
vbnc name.vb
3. Execute
mono name.exe
4. Result