Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.01.2013, 19:58
Digital вне форума Посмотреть профиль Отправить личное сообщение для Digital Найти все сообщения от Digital
  № 1  
Ответить с цитированием
Digital

Регистрация: Apr 2012
Сообщений: 213
По умолчанию Как создать сетку?

Как создать сетку 10на10 пикселей ПРОГРАмМНО? Циклом?
Нужна сетка, на всю рабочую область

Старый 25.01.2013, 19:59
zomkoner вне форума Посмотреть профиль Отправить личное сообщение для zomkoner Посетить домашнюю страницу zomkoner Найти все сообщения от zomkoner
  № 2  
Ответить с цитированием
zomkoner
[++1 30.12.12]
[+1 30.12.12]
 
Аватар для zomkoner

Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
Вы имеете ввиду нарисовать сетку обычными линиями?
P.S я просто пока что зеленый, может я что то не до понимаю...
__________________
Я слышу и забываю.Я вижу и запоминаю.Я делаю и понимаю.

Старый 25.01.2013, 20:10
Digital вне форума Посмотреть профиль Отправить личное сообщение для Digital Найти все сообщения от Digital
  № 3  
Ответить с цитированием
Digital

Регистрация: Apr 2012
Сообщений: 213
Да, да обычными линиями. Просто все мои варианты какие-то масивные) Хотелось бы что-то по короче

Старый 25.01.2013, 20:11
zomkoner вне форума Посмотреть профиль Отправить личное сообщение для zomkoner Посетить домашнюю страницу zomkoner Найти все сообщения от zomkoner
  № 4  
Ответить с цитированием
zomkoner
[++1 30.12.12]
[+1 30.12.12]
 
Аватар для zomkoner

Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
Сейчас я попробую создать! Не знаю подойдет ли тебе мой вариант.

Добавлено через 10 минут
Код AS3:
import flash.display.Sprite;
import flash.display.Shape;
 
var conteiner:Sprite = new Sprite();
var xMax:int = 100;
var yMax:int = 100;
var setka:int = 10;
 
addChild(conteiner);
addSetka(xMax, yMax, setka);
 
function addSetka(xM:int, yM:int, size:int):void{
	var lineX:int = (xM / size);
	var lineY:int = (yM / size);
	for (var i:int = 0; i<lineX; i++){
		var kordX:int = i * size;
		var shape:Shape = new Shape();
		shape.graphics.lineStyle(1, 0x000000);
		shape.graphics.moveTo(kordX, 0);
		shape.graphics.lineTo(kordX, yM);
		conteiner.addChild(shape);	
	}
	for (var i:int = 0; i<lineY; i++){
		var kordY:int = i * size;
		var shape:Shape = new Shape();
		shape.graphics.lineStyle(1, 0x000000);
		shape.graphics.moveTo(0, kordY);
		shape.graphics.lineTo(xM, kordY);
		conteiner.addChild(shape);	
	}
}
Вот. Не знаю подойдет ли тебе это или нет.
__________________
Я слышу и забываю.Я вижу и запоминаю.Я делаю и понимаю.

Старый 25.01.2013, 20:28
Digital вне форума Посмотреть профиль Отправить личное сообщение для Digital Найти все сообщения от Digital
  № 5  
Ответить с цитированием
Digital

Регистрация: Apr 2012
Сообщений: 213
Немного короче чем у меня. Спасибо) НО
Монтажный кадр 1, слой "Слой 1", кадр 1, строка 25 Warning: 3596: Повторное определение переменной.

Старый 25.01.2013, 20:28
zomkoner вне форума Посмотреть профиль Отправить личное сообщение для zomkoner Посетить домашнюю страницу zomkoner Найти все сообщения от zomkoner
  № 6  
Ответить с цитированием
zomkoner
[++1 30.12.12]
[+1 30.12.12]
 
Аватар для zomkoner

Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
Код AS3:
import flash.display.Sprite;
import flash.display.Shape;
 
var conteiner:Sprite = new Sprite();
var xMax:int = 100;
var yMax:int = 100;
var setka:int = 10;
 
addChild(conteiner);
addSetka(xMax, yMax, setka);
 
function addSetka(xM:int, yM:int, size:int):void{
	var lineX:int = (xM / size);
	var lineY:int = (yM / size);
	for (var i:int = 0; i<lineX; i++){
		var kordX:int = i * size;
		var shape:Shape = new Shape();
		shape.graphics.lineStyle(1, 0x000000);
		shape.graphics.moveTo(kordX, 0);
		shape.graphics.lineTo(kordX, yM);
		conteiner.addChild(shape);	
	}
	for (var ii:int = 0; ii<lineY; ii++){
		var kordY:int = ii * size;
		var shape2:Shape = new Shape();
		shape2.graphics.lineStyle(1, 0x000000);
		shape2.graphics.moveTo(0, kordY);
		shape2.graphics.lineTo(xM, kordY);
		conteiner.addChild(shape2);	
	}
}
лучше вот так, а то ошибки выдаёт о повторном создании...

Добавлено через 59 секунд
Я просто сразу не заметил!

Добавлено через 4 минуты
PS Можешь убрать var xMax:int = 100;
var yMax:int = 100;
var setka:int = 10; и написать addSetka(100, 100, 10);
ещё короче станет =)
__________________
Я слышу и забываю.Я вижу и запоминаю.Я делаю и понимаю.

Старый 25.01.2013, 20:36
Digital вне форума Посмотреть профиль Отправить личное сообщение для Digital Найти все сообщения от Digital
  № 7  
Ответить с цитированием
Digital

Регистрация: Apr 2012
Сообщений: 213
Ооо) Это другое дело) Ещё бы сетка не обрывалась...

Добавлено через 1 минуту
for (var i:int = 0; i<lineX+1; i++){
Так лучше, сетка выходит законченная

Добавлено через 2 минуты
Огромное вам спасибо) Очень выручили)

Старый 25.01.2013, 20:51
zomkoner вне форума Посмотреть профиль Отправить личное сообщение для zomkoner Посетить домашнюю страницу zomkoner Найти все сообщения от zomkoner
  № 8  
Ответить с цитированием
zomkoner
[++1 30.12.12]
[+1 30.12.12]
 
Аватар для zomkoner

Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
Да не за что! Мне самому это полезно! В подписи сказано почему...=)
__________________
Я слышу и забываю.Я вижу и запоминаю.Я делаю и понимаю.

Старый 25.01.2013, 21:08
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 9  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Код AS3:
package 
{
	import flash.display.Sprite;
 
 
	public class Main extends Sprite {
 
		private var _cell:		int = 10;
		private var _numCellsW:	int = 0;
		private var _numCellsH:	int = 0;
 
		public function Main() {
			_numCellsW 	= stage.stageWidth / _cell;
			_numCellsH	= stage.stageHeight / _cell;
			graphics.lineStyle(1, 0x000000);
			for (var i:int = 0; i < _numCellsH; i++) {
				for (var j:int = 0; j < _numCellsW; j++) {
					graphics.drawRect(j * _cell, i * _cell, _cell, _cell);
				}
			}
			graphics.endFill();
		}
	}
}
ну или если в кадре, то
Код AS3:
var cell:int = 10;
var numCellsW:int = stage.stageWidth / cell;
var numCellsH:int = stage.stageHeight / cell;
graphics.lineStyle(1, 0x000000);
for (var i:int = 0; i < numCellsH; i++) {
	for (var j:int = 0; j < numCellsW; j++) {
		graphics.drawRect(j * cell, i * cell, cell, cell);
	}
}
graphics.endFill();
п.с.
Цитата:
лучше вот так, а то ошибки выдаёт о повторном создании...
Не лучше ли тогда так:
Код AS3:
for (i = 0; i < lineY; i++)
переменная i уже определена, незачем ее определять повторно

Старый 25.01.2013, 21:14
zomkoner вне форума Посмотреть профиль Отправить личное сообщение для zomkoner Посетить домашнюю страницу zomkoner Найти все сообщения от zomkoner
  № 10  
Ответить с цитированием
zomkoner
[++1 30.12.12]
[+1 30.12.12]
 
Аватар для zomkoner

Регистрация: Dec 2012
Адрес: Россия
Сообщений: 57
Да, согласен! Я что то даже об этом и не подумал! Так будет намного лучше!
__________________
Я слышу и забываю.Я вижу и запоминаю.Я делаю и понимаю.

Создать новую тему Ответ Часовой пояс GMT +4, время: 07:13.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 07:13.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.